<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Seanfly9105的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Seanfly9105</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Seanfly9105]]></copyright><item><title><![CDATA[计算机网络——chapter 1 计算机网络和因特网]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/125180641</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/125180641</guid><author>Seanfly9105</author><pubDate>Wed, 08 Jun 2022 11:03:43 +0800</pubDate><description><![CDATA[计算机网络第一章]]></description><category></category></item><item><title><![CDATA[数据结构与算法overview——第一章绪论]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/125015732</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/125015732</guid><author>Seanfly9105</author><pubDate>Sat, 28 May 2022 10:56:47 +0800</pubDate><description><![CDATA[0 序言

基本结构（三部分）

数据结构的基本概念（第1章 绪论）
基本的数据结构

线性结构

线性表（第2章）
栈和队列（第3章）
串（第4章）
数组和广义表（第4章）


非线性结构

树（第5章）
图（第6章）




基本的数据处理技术

查找（第7章）
排序（第8章）





1 绪论
1.1 数据结构的研究内容
数据结构研究非数值计算的程序设计中计算机操作对象以及它们之间的关系和操作
1.2 基本概念和术语
1.2.1 数据、数据元素、数据项和数据对象

数据：能输入计算机且能被计算机处理]]></description><category></category></item><item><title><![CDATA[计算机网络——Chapter 3 运输层]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/121481341</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/121481341</guid><author>Seanfly9105</author><pubDate>Mon, 22 Nov 2021 21:41:54 +0800</pubDate><description><![CDATA[Chapter 3 运输层
3.1 概述transport-layer services

运输层协议为运行在不同主机 的应用进程（processes)之间提供逻辑通信（logic communication）。
运输层协议是在端系统（end system）中不是在路由器中实现的。
send side：运输层将从应用process接收到的报文转换成运输层分组，即报文段（segment），传递给网络层，网络层将其封装成网络层分组（datagram)向目的地发送。
receive side：网络层从datagr]]></description><category></category></item><item><title><![CDATA[计算机网络——chapter2 应用层]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/121481102</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/121481102</guid><author>Seanfly9105</author><pubDate>Mon, 22 Nov 2021 21:28:25 +0800</pubDate><description><![CDATA[应用层
2.1应用层协议原理

研发网络应用程序的核心是写出能够运行在不同端系统和通过网络彼此通信的程序。
不需要写在网络核心设备如路由器或链路层交换机上运行的软件，也无法做到。
网络核心设备不在应用层上起作用，而是在较低层尤其是位于网络层及下面层次。

2.2.1 网络应用程序体系结构


不同于固定的网络体系结构，应用程序体系结构（application architectures）由应用程序研发者设计，规定了如何在各终端系统上组织该应用程序。


客户-服务器体系结构（client-server ar]]></description><category></category></item><item><title><![CDATA[《恶意代码分析实战》课后实验1-1]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/121075049</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/121075049</guid><author>Seanfly9105</author><pubDate>Mon, 01 Nov 2021 10:13:05 +0800</pubDate><description><![CDATA[**实验工具**：

PEiD——&gt;查壳&amp;观察对应文件的一些文件结构（主要是PE的结构）
Strings——&gt;查看可打印字符，总结病毒的一些特征行为
PETools——&gt;查看文件结构
virscan网站——&gt;查看病毒信息



**实验思路**：

利用网络扫描工具（virustotal、virscan）对目标程序进行扫描
利用本地静态分析工具分析目标程序
对上述结果进行分析



将文件上传至virustotal进行分析并查看报告。文件匹配到了已有的反病毒软件特征吗？
1.]]></description><category></category></item><item><title><![CDATA[初级算法之数组——删除排序数组中的重复项]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/119135388</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/119135388</guid><author>Seanfly9105</author><pubDate>Tue, 27 Jul 2021 10:07:15 +0800</pubDate><description><![CDATA[初级算法之数组——删除排序数组中的重复项
题目描述

代码注释
int removeDuplicates(int* nums, int numsSize){
    if(numsSize==0) return 0;//数组为空
    int i=0;
    for(int j = 1;j&lt;numsSize;j++){
    	/*当i所指与j所指不同时，i移向下一位，
    	并把j所指的值赋给i位，相同时，i不动，
    	j继续向后探索寻找不重复的值*/
        if(nums]]></description><category></category></item><item><title><![CDATA[chapter 2 古典密码技术]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/118146078</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/118146078</guid><author>Seanfly9105</author><pubDate>Wed, 23 Jun 2021 10:41:22 +0800</pubDate><description><![CDATA[chapter 2 古典密码技术
2.1替代密码

替代是古典密码中用到的最基本的处理技巧之一 ；
替代密码是指先建立一个替换表，加密时将需要加密的明文依次通过查表，替换为相应的字符，明文字符被逐个替换后，生成无任何意义的字符串，即密姐姐文，替代密码的密钥就是其替换表。
根据密码算法加解密时使用替换表多少的不同，替代密码又可分为单表替代密码和多表替代密码。

2.1.1单表替代密码


一般单表替代密码：

原理：以26个英文字母集合上的一个置换π为密钥，对明文消息中的每个字母依次进行变换。
表示为：明文空]]></description><category></category></item><item><title><![CDATA[应用密码学概述]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/117917385</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/117917385</guid><author>Seanfly9105</author><pubDate>Tue, 15 Jun 2021 06:21:00 +0800</pubDate><description><![CDATA[chapter 1 概述


密码学：研究编制和破译密码的技术科学，保证信息的机密性、真实性（鉴别）、完整性、可用性和不可抵赖性。


信息安全的基本属性：机密性（confidentiality）、完整性（integrity）、可鉴别性（认证，Authentication）、抗抵赖性（不可否认性，Non-repudiation）、可用性（Availability）、可靠性（Reliability）、可控性（Controllability）、可追溯性(可审计性，Accountability)。


古典密码：]]></description><category></category></item><item><title><![CDATA[Linux下编译出现“对‘sem_wait’未定义的引用”]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/115869618</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/115869618</guid><author>Seanfly9105</author><pubDate>Mon, 19 Apr 2021 17:24:37 +0800</pubDate><description><![CDATA[问题如下：
解决办法：


]]></description><category></category></item><item><title><![CDATA[python练习——黑色星期五]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/114602136</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/114602136</guid><author>Seanfly9105</author><pubDate>Tue, 09 Mar 2021 21:45:44 +0800</pubDate><description><![CDATA[python练习——黑色星期五
题目描述
星期五和数字13都代表着坏运气，两个不幸的个体最后结合成超级不幸的一天。所以，不管哪个月的13日，如果恰逢星期五就叫“黑色星期五”。
编程输出某年所有的黑色星期五的具体日期。
输入输出格式
输入：输入一个代表年份的数字
输出：该年的黑色星期五

代码注释
# 引入关于时间的datetime库
import datetime
year=eval(input())
# 获取year这年的每个月的13日作为一个列表
days=[datetime.date(year,i,1]]></description><category></category></item><item><title><![CDATA[力扣每日一题——剑指 Offer 09. 用两个栈实现队列]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/114481293</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/114481293</guid><author>Seanfly9105</author><pubDate>Sun, 07 Mar 2021 12:12:55 +0800</pubDate><description><![CDATA[力扣每日一题——剑指 Offer 09. 用两个栈实现队列
题目描述

代码注释
class CQueue:

    def __init__(self):
        self.A,self.B=[],[]
        
	# 队列尾部直接插入一个整数
    def appendTail(self, value: int) -&gt; None:
        self.A.append(value)
	
	# 用另一个列表B逆序装下A中元素，popB中最后一个元素即输出A头的元素
    ]]></description><category></category></item><item><title><![CDATA[python练习——判断IP地址合法性]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/114407513</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/114407513</guid><author>Seanfly9105</author><pubDate>Fri, 05 Mar 2021 18:42:09 +0800</pubDate><description><![CDATA[python练习——判断IP地址合法性
题目描述
互联网上的每台计算机都有一个独一无二的编号，称为IP地址，每个合法的IP地址由’.'分隔开的4个数字组成，每个数字的取值范围是0-255。
现在用户输入一个字符串 s (不含空白符，不含前导0，如001直接输入1)，请你判断 s 是否为合法IP，若是，输出’Yes’,否则输出’No’。
如用户输入为202.114.88.10， 则输出Yes; 当用户输入202.114.88，则输出No。
输入输出格式
输入：一个字符串
输出：‘No’或’Yes’
代码注释
]]></description><category></category></item><item><title><![CDATA[python练习——老鼠打洞]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/114404961</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/114404961</guid><author>Seanfly9105</author><pubDate>Fri, 05 Mar 2021 17:41:19 +0800</pubDate><description><![CDATA[python练习——老鼠打洞
题目描述
《九章算术》的“盈不足篇”里有一个很有意思的老鼠打洞问题。原文这么说的：今有垣厚十尺，两鼠对穿。大鼠日一尺，小鼠亦一尺。大鼠日自倍，小鼠日自半。问：何日相逢？各穿几何？
翻译即为，有一堵十尺厚的墙，两只老鼠从两边向中间打洞。大老鼠第一天打一尺，小老鼠也是一尺。大老鼠每天的打洞进度是前一天的一倍，小老鼠每天的进度是前一天的一半。问它们几天可以相逢，相逢时各打了多少。
输入输出格式
输入：输入1个整数，代表墙的厚度，单位为尺‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬]]></description><category></category></item><item><title><![CDATA[力扣每日一题——剑指 Offer 06. 从尾到头打印链表]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/114269548</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/114269548</guid><author>Seanfly9105</author><pubDate>Mon, 01 Mar 2021 19:20:38 +0800</pubDate><description><![CDATA[力扣每日一题——剑指 Offer 06. 从尾到头打印链表
题目描述

代码注释
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */


/**
 * Note: The returned array must be malloced, assume caller calls free().
 */
int* reverse]]></description><category></category></item><item><title><![CDATA[力扣每日一题——剑指 Offer 05. 替换空格]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/114106480</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/114106480</guid><author>Seanfly9105</author><pubDate>Thu, 25 Feb 2021 21:11:59 +0800</pubDate><description><![CDATA[力扣每日一题——剑指 Offer 05. 替换空格
题目描述
请实现一个函数，把字符串 s 中的每个空格替换成"%20"。

代码注释
void replaceSpace(char s[]){
	int origLength = 0; //字符串原有长度 
	int i = 0,count = 0;
	while(s[i]!='\0'){
		origLength++;
		if(s[i]==' ')
			count++;
		i++;			//空格个数 
	}
	int newLength = orig]]></description><category></category></item><item><title><![CDATA[python练习——统计学生平均成绩与及格人数]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/114089163</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/114089163</guid><author>Seanfly9105</author><pubDate>Thu, 25 Feb 2021 16:35:45 +0800</pubDate><description><![CDATA[python练习——统计学生平均成绩与及格人数
题目描述
编写程序，计算学生们的平均成绩，并统计及格（成绩不低于60分）的人数。题目保证输入与输出均在整型范围内。
输入输出格式
输入： 在一行中给出n个非负整数，即这n位学生的成绩，其间以空格分隔。
输出：average = 成绩均值  		count = 及格人数
代码注释
# 通过map()和list()函数把用户输入转化成int列表
score = list(map(int, input().split()))
# 用总和除以数量得到平均分
avera]]></description><category></category></item><item><title><![CDATA[力扣每日一题——1.两数之和]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/113826791</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/113826791</guid><author>Seanfly9105</author><pubDate>Tue, 16 Feb 2021 18:10:35 +0800</pubDate><description><![CDATA[力扣每日一题——1.两数之和
题目描述

代码注释
/**
 * Note: The returned array must be malloced, assume caller calls free().
 */
int* twoSum(int* nums, int numsSize, int target, int* returnSize){
	//用res表示target和数组中元素的差，flag作为是否找到的标志
    int res,flag=0;
    //i,j放在循环外方便待会用下标赋值]]></description><category></category></item><item><title><![CDATA[力扣每日一题——283.移动零]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/113401605</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/113401605</guid><author>Seanfly9105</author><pubDate>Fri, 29 Jan 2021 18:04:10 +0800</pubDate><description><![CDATA[力扣每日一题——283.移动零
题目描述

代码注释
//法一：多次遍历，把非零元素依次移到前面 
void moveZeroes(int* nums, int numsSize){
    for(int i = 0;i&lt;numsSize;i++){
        for(int j =0;j&lt;numsSize-1;j++){
            if(nums[j]==0){
                nums[j]=nums[j+1];
                nums]]></description><category></category></item><item><title><![CDATA[力扣每日一题——66.加一]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/113355184</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/113355184</guid><author>Seanfly9105</author><pubDate>Thu, 28 Jan 2021 18:48:13 +0800</pubDate><description><![CDATA[力扣每日一题——66.加一
题目描述


代码注释
#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt; 
int* plusOne(int* digits, int digitsSize, int* returnSize){
	//开辟新数组 
    int* result = (int*)malloc(sizeof(int)*(digitsSize+1));
    //最高位进位的话改变数组长度 
    int k=digitsSize;
    int]]></description><category></category></item><item><title><![CDATA[力扣每日一题——350.两个数组的交集II]]></title><link>https://blog.youkuaiyun.com/Seanfly9105/article/details/113248141</link><guid>https://blog.youkuaiyun.com/Seanfly9105/article/details/113248141</guid><author>Seanfly9105</author><pubDate>Wed, 27 Jan 2021 14:55:49 +0800</pubDate><description><![CDATA[力扣每日一题——350.两个数组的交集II
题目描述

代码注释
#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;math.h&gt;
int* intersect(int* nums1, int nums1Size, int* nums2, int nums2Size, int* returnSize){
	//记录获得数组元素个数
	int k=0;
	/*根据Note: The returned array must be ma]]></description><category></category></item></channel></rss>