知识点杂记

有关几种排序的时间复杂度
快速排序 nlogn
堆排序 nlogn
冒泡排序 在改良的冒泡下 最优时间复杂度为n
插入排序 最优下n
选择排序 n*n
归并 nlogn
知识点杂记

在TCP/IP建立连接过程中,客户端和服务器端的状态转移
TCP建立连接时,首先客户端和服务器处于close状态。然后客户端发送SYN同步位,此时客户端处于SYN-SEND状态,服务器处于lISTEN状态,当服务器收到SYN以后,向客户端发送同步位SYN和确认码ACK,然后服务器变为SYN-RCVD,客户端收到服务器发来的SYN和ACK后,客户端的状态变成ESTABLISHED(已建立连接),客户端再向服务器发送ACK确认码,服务器接收到以后也变成ESTABLISHED。然后服务器客户端开始数据传输

假设在n进制下,240*12=2880等式成立,n值是任意值
假设为n进值则 [2×(n2)+4×(n1)+0] × [1×n+2]=2×(n3)+8×(n2)+8×(n1) +0
化简后居然为恒等式 ,n为任一值

线性表:一对一关系,除首节点和尾节点外,每个结点都有一个直接前驱和后继结点。
关联数组的特性是key-value,根据key来查找value,这也就意味着关联数组的每个元素可以无前后顺序是离散的不是线性连续的

各种类型在内存中占内存大小:
32位编译器:
char :1个字节
char*(即指针变量):
4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。同理64位编译器)
short int : 2个字节
int: 4个字节
unsigned int : 4个字节
float: 4个字节
double: 8个字节
long: 4个字节
long long: 8个字节
unsigned long: 4个字节
64位编译器:
char :1个字节
char*(即指针变量): 8个字节
short int : 2个字节
int: 4个字节
unsigned int : 4个字节
float: 4个字节
double: 8个字节
long: 8个字节
long long: 8个字节
unsigned long: 8个字节
结构体的总大小,.必须是其内部最大成员的"最宽基本类型成员"的整数倍.不足的要补齐

iterator.erase():删除指定位置的元素时,返回值是一个迭代器,指向删除元素下一个元素;

静态成员和静态函数
类的静态成员属于整个类 而不是某个对象,可以被类的所有方法访问,子类当然可以访问父类静态成员;
静态方法属于整个类,在对象创建之前就已经分配空间,类的非静态成员要在对象创建后才有内存,所有静态方法只能访问静态成员,不能访问非静态成员;
静态成员可以被任一对象修改,修改后的值可以被所有对象共享。

kmp算法详解:
https://blog.****.net/liu940204/article/details/51318281