我要好offer之 网络大总结】的更多相关文章

1. TCP协议的状态机 TCP一共定义了11种状态,这些状态可以使用 netstat 命令查看 @左耳朵耗子 tcp系列教程: 上篇 下篇 2. TCP建立连接3次握手.释放连接4次握手 TCP包头有4个非常重要的东西: (1) Sequence Number:包的序列号,用来解决 网路包乱序的问题 (2) Acknowledge Number:ACK确认号,用来实现 超时重传机制(不丢包) (3) Window:滑动窗口,用来解决 拥塞控制的 (4) TCP flag:包的类型,主要是用来…
一. 二叉树定义 二叉树具有天然的递归特性,凡是二叉树相关题,首先应该联想到递归 struct BinTreeNode { BinTreeNode* left; BinTreeNode* right; int val; BinTreeNode(int value) : left(nullptr), right(nullptr), val(value) { } }; 二. 二叉树遍历 详见笔者博文:二叉树遍历大总结 #include <iostream> #include <vector&…
1. 二分搜索 详见笔者博文:二分搜索的那些事儿,非常全面 2. 矩阵二分搜索 (1) 矩阵每行递增,且下一行第一个元素大于上一个最后一个元素 (2) 矩阵每行递增,且每列也递增 3. DFS 深度优先搜索 适用场景: (1) 输入数据:如果是 递归数据结构(如单链表.二叉树),则一定可以使用DFS (2) 求解目标:必须走到最深处(例如二叉树,必须走到叶子节点)才能得到一个解,这种情况一般适合用DFS 思考步骤: (1) DFS最常见的3个问题:求可行解的总数.求任一个可行解.求所有可行解 (…
0. Google C++编程规范 英文版:http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml 中文版:http://zh-google-styleguide.readthedocs.org/en/latest/google-cpp-styleguide/contents/ 1. C++函数的林林总总 2. Effective C++学习笔记 (1) 习惯c++,const特性 (2) 构造.析构.赋值.copy and…
单链表是一种递归结构,可以将单链表看作特殊的二叉树(我把它叫做一叉树) 单链表的定义: /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ 1. O(1)时间删除结点 ListNode* DeleteNode(ListNode* pHead, ListNode* dele…
1. APUE Unix环境高级编程 (1) Unix基础知识: 内核->系统调用->shell和库函数->应用软件 (2) 文件I/O:read函数返回值.进程的文件描述符表.文件共享.inode.fcntl函数 (3) 文件和目录:文件类型(普通.目录.socket.FIFO.PIPE).文件系统(硬链接.软链接) (4) 标准I/O库:FIFE封装.最佳缓冲大小测试 (5) 进程环境:进程终止情况.longjmp.volatile用法 (6) 进程控制:fork(返回值.父子进程的…
1. 利用等概率Rand5生成等概率Rand3 Rand5生成等概率Rand3 这个题目可以扩展为:利用等概率RandM生成等概率RandN (M > N) 这里,我们首先明白一个简单的知识点:如果 randN 可以等概率生成 [0, N) 之间的数 假设 N = T的整倍数,那么我们可以直接使用 RandN() / (N / T) 来等概率生成 [0, T)之间的数 比如说,Rand21可以等概率生成[0, 21)之间的数,那么 Rand21() / 3 就可以等概率生成 [0, 7)之间的数…
1. 插入排序 (1) 直接插入排序 void StraightInsertionSort(std::vector<int>& num) { || num.size() == ) return; ; i < num.size(); ++i) { int tmp = num.at(i); ; && num.at(j) > tmp; --j) { num.at(j + ) = num.at(j); } num.at(j + ) = tmp; } } (2) 折半…
1. str*系列手写代码 a. 一定要注意末尾'\0'的处理,切记切记 b. 一定要对输入做有效性判断,多用断言就是了 int Strlen(const char* str) { assert(str != NULL); const char* tmp = str; while (*tmp != '\0') { ++tmp; } return tmp - str; } char* Strcpy(char* dst, const char* src) { assert(dst != NULL &…
私有网络 VPC_云上网络空间_自定义网络 - 腾讯云 https://cloud.tencent.com/product/vpc 私有网络 VPC 简介 私有网络(Virtual Private Cloud,VPC)是基于腾讯云构建的专属云上网络空间,为您在腾讯云上的资源提供网络服务,不同私有网络间完全逻辑隔离.作为您在云上的专属网络空间,您可以通过软件定义网络的方式管理您的私有网络 VPC,实现 IP 地址.子网.路由表.网络 ACL .流日志等功能的配置管理.私有网络还支持多种方式连接 I…