面经

格灵深瞳一面
1.部署的容器技术了解过吗?
2.单例模式的三种方式?
3.双重检查为什么要检查两次,Synchronize关键字一般加在双锁检查的什么位置?
4.如果实现了单例模式,有人想要用new关键字创建新的实例,应该怎么办?
5.Synchronize一般用来修饰什么,修饰静态方法和修饰普通方法的锁一样吗。修饰代码块怎么加锁?
6.一个线程方法 A和方法B,对A和B都用Synchronize进行同步,然后方法A中调用方法B是否能成功,A加锁之后,进入B还能进行加锁吗?这个主要考察Synchronize可重入锁的概念
7.Volatile关键字主要用来做什么?Int变量用Volatile修饰在多线程情况下会出现问题吗?描述一下会出现什么问题?
8.Thread类中的中断方法interrupt()
9.线程完整的生命周期,阻塞状态为什么不能回到运行状态,运行能直接回到就绪吗?
10.假如一台计算机有4G的物理内存,现在给一个可执行程序大小超过4个G,这个可执行程序可以执行吗?
11.操作系统会处理很多的中断,中断的一般处理流程。如果已经进入中断处理流程,然后再进来一个中断,会怎么样。当发生中断,怎么通过中断找到的对应的中断程序?
12.浏览器中输入网址,五层模型中都做了什么,DNS为什么是UDP协议?
13.访问首页有哪种HTTP方法,HTTP方法有哪些?
14.如果TCP连接后,发送的大小为S,窗口大小为1,期望收到的下一个是多少?
15.客户端向服务器发送三段数据,如果中间的丢包,这时收到第一段和第三段之后,会返回几个ACK?
16.网络中的路由器收到IP数据包之后,怎么根据IP找到需要转发的地方。每次收到数据包都需要路进行路由算法吗?
17.TCP是单工,半双工还是全双工?
18.快速排序的平均复杂度是多少?最坏时间时间复杂度?什么情况下最坏?怎么优化?
19.快速排序稳定吗,堆排序稳定吗,冒泡排序稳定吗,插入排序稳定吗,稳定性怎么定义,稳定性的实际应用的意义在哪,快速冒泡都是比较两个不同元素的相对大小,有不比较两个数的吗,基数排序的工作原理。基数排序为什么从低位向高位,为什么不从高位相低位排序?
20.图的遍历有几种方式,深度用到的数据结构,广度主要是用到什么?
21.B树和B+树的区别,B+树非叶子节点最多存储1024个索引,最少能存储多少个节点,B+树在树中的深度是否相同,不断向B+树中存储,当形成新的叶子节点的时候,怎么保证叶子结点都在同一层?
最后就是反问环节。
感觉来说目前这家公司的面试官给我的感觉是最好的,面试更加贴切实际,实际应用场景,而不是背背背。虽然不知道最后结果咋样,但是还是感谢一下面试官。
#2022秋招##Java工程师#
全部评论
校友你好呀
点赞 回复
分享
发布于 2022-03-14 21:28

相关推荐

3 10 评论
分享
牛客网
牛客企业服务