面试必背必备

面试必背必备

  • 数据结构与算法
    • 常见排序算法及最坏时间复杂度
  • 计算机网络
    • 谈谈TCP的三次握手
      • 2.1、握手过程
      • 2.2、 为什么要三次握手
  • Java相关

数据结构与算法

常见排序算法及最坏时间复杂度

《忆排序》
选泡插,                                              选择 冒泡 插入
快归堆希桶计基,                                快速 归并 堆 希尔 桶 计数 基数排序
恩方恩老恩一三,                               平均时间复杂度为 n 2 * 3 {选泡插 } nlog2n * 3{快归堆} n1.3{希尔}
对恩加K恩乘K,                                     n+k * 2{桶 计数} n*k {基数}
不稳稳稳不稳稳,
不稳不稳稳稳稳。

在这里插入图片描述

计算机网络

谈谈TCP的三次握手

三次握手

2.1、握手过程

第一次握手:建立连接时,客户端发送SYN包(seq【序列号】=x)到服务器,并进入SYN_SEND状态,等待服务器确认;

第二次握手:服务器收到SYN包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(seq=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

2.2、 为什么要三次握手

在这里插入图片描述

三次握手的目的是建立可靠的通信信道,说到通讯,简单来说就是数据的发送与接收,而三次握手最主要的目的就是双方确认自己与对方的发送与接收是正常的

第一次握手:Client 什么都不能确认;Server 确认了对方发送正常,自己接收正常

第二次握手:Client 确认了:自己发送、接收正常,对方发送、接收正常;Server 确认了:对方发送正常,自己接收正常

第三次握手:Client 确认了:自己发送、接收正常,对方发送、接收正常;Server 确认了:自己发送、接收正常,对方发送、接收正常【第三次握手Server知道自己的发报能力和Client收报能力正常】

所以三次握手就能确认双发收发功能都正常,缺一不可。

Java相关

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部