迅雷开发一面
1.HashMap 的实现原理
2.怎么解决那个哈希冲突的呢?
3.数据量变大,我们的 HashMap 需要扩容,那怎么去扩容呢?数据量变大,我们的 HashMap 需要扩容,那怎么去扩容呢?
4.扩容,它的优点是什么?缺点是什么?
5。c++有 vector,也有 list。这两个跟 Java 的 ArrayList 和 LinkedList,区别
6.上一个回答中各个数据结构各自使用场景怎么样
7.Java 的线程模型是怎样的?
8.线程,协程又是怎样的一个分配模式?它的那个资源是怎么管理的?
9.URL 在请求数据,能描述一下这一次请求的整体的一个流程?
10.如果是 HTTPS 呢?它在哪里会增加什么流程?
11.tcp连接过程什么样的
12.两次握手不行吗?就我发一个 syn,然后你给我一个 ack,我们就连接好了,为啥不行
13.TCP 还没收到那个 ACK 的时候,是那个半连接还是全连接?放在,它这个 socket 是放在半连接队列呢?还是放在全连接队列?
14,半连接队列的 socket 的数据包能能被读到吗
15.TCP 的滑动窗口的作用?
16.滑动窗口,变大变小是怎么怎么控制的?
17.手撕二分查找
18,高并发的短链生成系统怎么实现
反问:表现:广度可以,有些不够深入,但作为刚要毕业,掌握这些已经很不错了#牛客AI配图神器#