一面 7/27
1h
操作系统:
介绍程序和进程, 线程与进程的联系和区别
为什么还需要线程
虚拟内存(什么是虚拟内存,原理,为什么需要)
线程池(为什么,怎么设计,核心线程与非核心线程的区别)
计算机网络:
TCP与UDP的区别
HTTP与HTTPS的区别
HTTPS是怎么实现加密的
对称加密和非对称加密,为什么非对称加密更加安全
java:
用过哪些容器
有哪些并发相关的,concurrentHashMap怎样实现的
数据库:
查询班级中所有课程成绩大于80的学生姓名
算法:
Ipv4地址与int的转换(为什么用int会出现负数)
二面 8/4
1h
这个面试官明显和上一个不一样了。。。严肃很多
自己讲一下擅长什么,有什么想展示给我的
问了很久的论文
进程和线程的区别,虚拟内存和物理内存的关系
进程间通信和线程间通信分别有哪些方式,有什么区别
两道算法:
1,某一个大文件被拆成了N个小文件,每个小文件编号从0至N-1,相应大小分别记为S(i)。给定磁盘空间为C,试实现一个函数从N个文件中连续选出若干个文件拷贝到磁盘中,使得磁盘剩余空间最小。
2,Q:有n个长度为m的整数数组,均为递增排序,将n个数组合并成一个递增排序的数组。
三面 8/11
1h20min
自我介绍
Java:
HashMap底层实现
红黑树怎样保证高效率查询,红黑树的特点,插入删除是怎样做到的,AVL树的左旋右旋了解吗
gc相关
操作系统:
会不会linux系统(不太会,问了top命令,vim编辑器)如果系统内存很满了,要在vim里面打开一个很大的文件,可能出现什么情况(不断产生中断,进而崩溃)
那就windows系统,如果电脑很慢,可能有哪些原因(我说了进程太多),怎么看cpu的使用情况(任务管理器。。)
进程是怎么执行的(不知道该怎么回答,说了pcb,资源分配什么的,他问我是不是直接分配的物理内存,不太清楚。。)
计算机网络:
三次握手了解吧,说一下三次握手分别是用来干嘛的,握手的那个序列号是怎么产生的(第一次是随机产生的)
sync攻击了解吗(不了解,猜的是不断发连接浪费服务端资源,使得服务端一直保持等待连接状态,好像差不多)
怎样确定等待队列的长度(这个不知道)
怎么避免这种攻击(回答的计时器)
tcp和udp的区别
udp怎样实现可靠连接(我说的是编号,保持顺序传输和重复丢弃,丢失重传)
udp的可靠连接相比较tcp是怎样实现高效率的(我说了不用建立连接,首部字节更小,还有不用流量控制和拥塞控制,可以一次发多个数据包)
有2千万个高考生的成绩,怎样排序(每个高考生的信息是一个ID和成绩,先问能不能再内存里面放得下,ID起码占多少个字节(4个字节,一个Int即可),成绩用2个字节,忘了内存的单位转换,,,算了半天,应该是100多M,排序回答的是快排,问我有没有更快的排序方法,我说排序最快就是nlogn,他问我能不能n,一次扫描,我没想出来,然后给我提示桶排序,,,创建750个桶即可,我忘记成绩是有限的了,,,)
开放题:封闭房间里面有一个钢桌和N个钢球,其中有一个是空心的,怎样快速找出(没有电子称,无法感觉的出来,我说了斜面,然后看速度谁慢一些)
设计题:设计一个体育播报系统(有很多个直播间,每个直播间直播不同的内容,有主播管理这些直播间,不懂什么意思,然后问如果此时主播发了一个消息,怎么存储,我说我只会MySQL,他就说那就用MySQL存储,如果此时看女排的人太多了,数据存不了怎么办,我说用多个服务器分库,然后他说那具体怎么办呢,答不上来,给我提示用缓存,,,)
算法题:链表相加
反问才知道我是面的实习生岗位。。他当校招来面的
全部评论
(3) 回帖