<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[只愿不违本心的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_34228570</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_34228570]]></copyright><item><title><![CDATA[使用递归求平均值]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/81633490</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/81633490</guid><author>qq_34228570</author><pubDate>Mon, 13 Aug 2018 17:15:43 +0800</pubDate><description><![CDATA[　　如果数组长度为1，则可以直接返回平均值结果；否则将数组A视为两部分，即A[n-1]和A[0,…,n-2]，递归地处理A[0,…,n-2]中n-1个数的平均值avg，通过(avg*(n-1)+A[n-1])/n即可求得数组A中所有数的平均值。

float arrayavg(float A[],int n){
    if(n==0)
        return A[n];
    else
...]]></description><category></category></item><item><title><![CDATA[递归算法求n个不同字符的所有全排序列]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/81632808</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/81632808</guid><author>qq_34228570</author><pubDate>Mon, 13 Aug 2018 16:46:05 +0800</pubDate><description><![CDATA[　　设str是含有n个不同字符的数组例如12345，perm（str,k,n）为str[0]~str[k]的所有字符全排序输出函数，n为str数组字符个数。以此类推，perm(str,k-1,n)处理的字符个数比perm(str,k,n)处理的字符个数少一个。假定perm(str,k-1,n)可求，对于第k个位置可以任取str[0]~str[k-1]内任意元素作为str[k]，再组合perm(st...]]></description><category></category></item><item><title><![CDATA[让DevC++支持ISOC++11标准]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/81023614</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/81023614</guid><author>qq_34228570</author><pubDate>Thu, 12 Jul 2018 22:38:15 +0800</pubDate><description><![CDATA[工具-&amp;gt;编译选项 
 
语言标准 设置ISO C++ 11

原文：https://blog.youkuaiyun.com/qiqi123i/article/details/53150837]]></description><category></category></item><item><title><![CDATA[结构体边界对齐]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80480837</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80480837</guid><author>qq_34228570</author><pubDate>Wed, 30 May 2018 13:02:30 +0800</pubDate><description><![CDATA[　　许多实际的计算机系统对基本类型数据在内存中存放的位置有限制，它们会要求这些数据的首地址的值是某个数k(通常它为4或8)的倍数，这就是所谓的内存对齐，而这个k则被称为该数据类型的对齐模数(alignment modulus)。当一种类型S的对齐模数与另一种类型T的对齐模数的比值是大于1的整数，我们就称类型S的对齐要求比T强(严格)，而称T比S弱(宽松)。这种强制的要求一来简化了处理器与内存之间传...]]></description><category></category></item><item><title><![CDATA[TCP 为什么是三次握手，而不是两次或四次？]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80354486</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80354486</guid><author>qq_34228570</author><pubDate>Thu, 17 May 2018 17:47:40 +0800</pubDate><description><![CDATA[简单说，让双方都证实对方能发收。 
知道对方能收是因为收到对方的因为收到而发的回应。 
具体： 
1：A发，B收， B知道A能发 
2：B发，A收， A知道B能收和发 
3：A发，B收， B知道A能收

转载自：TCP 为什么是三次握手，而不是两次或四次？ - 朱翔的回答 - 知乎 
https://www.zhihu.com/question/24853633/answer/115072630...]]></description><category></category></item><item><title><![CDATA[子网划分为什么全0全1子网号不能使用？CIDR为什么能使用全0全1子网号？]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80245031</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80245031</guid><author>qq_34228570</author><pubDate>Thu, 10 May 2018 14:50:49 +0800</pubDate><description><![CDATA[1.子网划分为什么全0全1子网号不能使用？

看看RFC950提到的原因：  
假设我们有一个网络：192.168.0.0/24，我们现在需要两个子网，那么按照RFC950，应该使用使用两位子网号，即/26，得到两个可以使用的子网192.168.0.64/26和192.168.0.128/26 
对于主网络192.168.0.0/24，网络地址是192.168.0.0，广播地址是192.168.0...]]></description><category></category></item><item><title><![CDATA[子网划分、子网掩码、可变子网掩码（VLSM）和CIDR]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80196123</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80196123</guid><author>qq_34228570</author><pubDate>Tue, 08 May 2018 20:03:51 +0800</pubDate><description><![CDATA[一、子网划分

　　可以把基于每类的IP网络进一步分成更小的网络，每个子网由路由器界定并分配一个新的子网网络地址,子网地址是借用基于每类的网络地址的主机部分创建的。划分子网后，通过使用掩码，把子网隐藏起来，使得从外部看网络没有变化，这就是子网掩码。 
　　需要知道子网划分只是在路由器所管理的网络，在外部网络来看没有变化。

二、子网掩码...]]></description><category></category></item><item><title><![CDATA[逻辑地址、线性地址与物理地址简析]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80244349</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80244349</guid><author>qq_34228570</author><pubDate>Tue, 08 May 2018 19:14:11 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[电脑中常用的“扇区”、“簇”、“块”、“页”等概念]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80209748</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80209748</guid><author>qq_34228570</author><pubDate>Sat, 05 May 2018 21:28:50 +0800</pubDate><description><![CDATA[先看百度百科对于磁盘簇的解释： 
扇区是磁盘最小的物理存储单元，但由于操作系统无法对数目众多的扇区进行寻址，所以操作系统就将相邻的扇区组合在一起，形成一个簇，然后再对簇进行管理。每个簇可以包括2、4、8、16、32或64个扇区。显然，簇是操作系统所使用的逻辑概念，而非磁盘的物理特性。

为了更好地管理磁盘空间和更高效地从硬盘读取数据，操作系统规定一个簇中只能放置一个文件的内容，因此文件所占用的空间...]]></description><category></category></item><item><title><![CDATA[NAT技术基本原理与应用]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80203924</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80203924</guid><author>qq_34228570</author><pubDate>Sat, 05 May 2018 11:15:36 +0800</pubDate><description><![CDATA[原文链接:https://www.cnblogs.com/dongzhuangdian/p/5105844.html



1 概述



1.1 简介



1.1.1 名词解释

公有IP地址：也叫全局地址，是指合法的IP地址，它是由NIC（网络信息中心）或者ISP(网络服务提供商)分配的地址，对外代表一个或多个内部局部地址，是全球统一的可寻 址的地址。

私有IP地址：也叫内部地址，属于非注...]]></description><category></category></item><item><title><![CDATA[HTTP协议为什么可以传送HTML以外的文件？]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80196364</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80196364</guid><author>qq_34228570</author><pubDate>Fri, 04 May 2018 15:55:56 +0800</pubDate><description><![CDATA[原文链接：https://blog.youkuaiyun.com/wangjian5748/article/details/593226

1.http协议的主体信息部分是使用html来包装的,http协议刚开始是用来传送html的，只是和MIME协议结合才可以传送别的格式数据。

2.http与MIME分别是两个此协议,MIME可以附属在其他许多协议上,例如SMTP协议,利用MIME协议可以在协议中包含特殊...]]></description><category></category></item><item><title><![CDATA[FTP 协议和 HTTP 协议的12点比较（文件上传/下载）]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80151875</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80151875</guid><author>qq_34228570</author><pubDate>Fri, 04 May 2018 15:51:14 +0800</pubDate><description><![CDATA[原文链接：https://www.oschina.net/news/28162/http-vs-ftp

许多站点，比如facebook或一些博客等都允许用户上传或下载文件，比如论坛或博客系统的图片。在这种情况下，通常有两种选择上传文件到服务器，那就是FTP协议和HTTP协议。

以下列出了一些两者的不同点：

1、HTTP协议是用来浏览网站的，而FTP是用来访问和传输文件的，FTP文件传输有点批...]]></description><category></category></item><item><title><![CDATA[主机怎么加入组播组]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80152133</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80152133</guid><author>qq_34228570</author><pubDate>Mon, 30 Apr 2018 21:12:00 +0800</pubDate><description><![CDATA[原文链接：https://www.zhihu.com/question/27233903 知乎用户：车小胖

组播也是一种IP包，也有源IP地址，目的IP地址，源IP地址为组播源的服务器IP地址，目的地址为一个特殊的IP地址，它位于 224.0.0.0 - 239.255.255.255 中，由于 224.0.0.0/8用于本地链路，即一跳的组播，239.0.0.0/8 为私有组播地址，所以实际的...]]></description><category></category></item><item><title><![CDATA[移动IP的作用及意义]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80151897</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80151897</guid><author>qq_34228570</author><pubDate>Mon, 30 Apr 2018 20:46:07 +0800</pubDate><description><![CDATA[一. 移动IP出现的背景

1.随着IP网络的迅速发展，人们不再满足于单一的、固定的因特网接入方式，而是希望能够提供灵活的上网方式。

2.无线互联网的发展，要求IP网络能够提供对移动性的良好支持。

3.个人通信时代的到来，要求用户在任何地方都可以利用自己的一个专有地址上网。

4.在未来的IPv6网络中，网络节点的概念不只局限在传统的主机，还包括各种智能设备，如汽车等，加上IPv6对移动IP的...]]></description><category></category></item><item><title><![CDATA[Mac帧的源Mac地址在转发过程会变化的原因]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80151724</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80151724</guid><author>qq_34228570</author><pubDate>Mon, 30 Apr 2018 20:24:43 +0800</pubDate><description><![CDATA[　　这涉及到交换机的自学习功能。交换机是通过转发给他的Mac帧来逐步建立转发表和ARP缓存表进行自学习。交换机是要建立ARP缓存表，它的自学习过程只能学习到发给他的帧的源MAC和端口映射，所以路由器需要改变帧中源MAC为自己的MAC，这样中间的二层交换机才能学习到。 
　　下面是具体的转发过程： 
　　交换机中有一张MAC地址表，当交换机接收到任一数据帧，它首先会记录该数据帧的源端口和源MAC地址...]]></description><category></category></item><item><title><![CDATA[c++ string与int(其他的内部类型)转换]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80146758</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80146758</guid><author>qq_34228570</author><pubDate>Mon, 30 Apr 2018 00:18:04 +0800</pubDate><description><![CDATA[一、int转string

1.如果你用的编译器是基于最新的C++11标准，那么string和其他类型转换问题就变的很简单，因为中已经封装好了对应的转换方法：

标准库中定义了to_string(val);可以将其它类型转换为string。

string to_string (int val);
string to_string (long val);
string to_string (lon...]]></description><category></category></item><item><title><![CDATA[1084. 外观数列 (20)]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80048636</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80048636</guid><author>qq_34228570</author><pubDate>Mon, 23 Apr 2018 11:58:22 +0800</pubDate><description><![CDATA[外观数列是指具有以下特点的整数序列：

d, d1, d111, d113, d11231, d112213111, … 
它从不等于 1 的数字 d 开始，序列的第 n+1 项是对第 n 项的描述。比如第 2 项表示第 1 项有 1 个 d，所以就是 d1；第 2 项是 1 个 d（对应 d1）和 1 个 1（对应 11），所以第 3 项就是 d111。又比如第 4 项是 d113，其描述就是 ...]]></description><category></category></item><item><title><![CDATA[Hash时取模为什么要模质数]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80035315</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80035315</guid><author>qq_34228570</author><pubDate>Sun, 22 Apr 2018 00:23:05 +0800</pubDate><description><![CDATA[　　首先来说假如关键字是随机分布的，那么无所谓一定要模质数。但在实际中往往关键字有某种规律，例如大量的等差数列，那么公差和模数不互质的时候发生碰撞的概率会变大，而用质数就可以很大程度上回避这个问题。 
　　考虑模是合数的情况：假设N = kn, M = km， N和M存在最大公因数k，此时可以将N % M = r转化为公式N = Mq + r，即kn = kmq + r。其中q是商，r是余数。“表...]]></description><category></category></item><item><title><![CDATA[堆排序的时间复杂度分析]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80024306</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80024306</guid><author>qq_34228570</author><pubDate>Sat, 21 Apr 2018 01:27:18 +0800</pubDate><description><![CDATA[堆排序包括两个阶段，初始化建堆和重建堆。所以堆排序的时间复杂度由这两方面组成，下面分别进行分析。先post一个实现代码，便于分析。

#include &amp;lt;stdio.h&amp;gt;

void swap(int *a, int *b);
void adjustHeap(int param1,int j, int inNums[]);
void  HeapSort(int nums, int in...]]></description><category></category></item><item><title><![CDATA[希尔排序的时间复杂度为什么能小于O(n^2)]]></title><link>https://blog.youkuaiyun.com/qq_34228570/article/details/80023815</link><guid>https://blog.youkuaiyun.com/qq_34228570/article/details/80023815</guid><author>qq_34228570</author><pubDate>Fri, 20 Apr 2018 20:41:28 +0800</pubDate><description><![CDATA[可以用逆序数来理解，假设我们要从小到大排序，一个数组中取两个元素如果前面比后面大，则为一个逆序，容易看出排序的本质就是消除逆序数，可以证明对于随机数组，逆序数是O(N^2)的，而如果采用“交换相邻元素”的办法来消除逆序，每次正好只消除一个，因此必须执行O(N^2)的交换次数，这就是为什么冒泡、插入等算法只能到平方级别的原因，反过来，基于交换元素的排序要想突破这个下界，必须执行一些比较，交换相隔比较...]]></description><category></category></item></channel></rss>