1.讲一下线程参数的含义
2.innodb的索引实现
3.为什么是B+树
4.Redis的使用,分布式锁的实现
5.操作系统虚拟内存换页的过程
6.TCP的三次握手
7.volatile关键字的作用
8.乐观锁和悲观锁
9.HashMap 结构,是否线程安全? ConcurrentHashMap如何保证线程安全?
10.之前用过的设计模式?
11.B树和B+树的区别
12.Redis的扩容机制(渐进式单线程扩容)
13.Spring AOP的原理
14.Spring loC的原理,如何实现,如何解决循环依赖
15.两线程对变量i进行加1操作,结果如何?为什么?如何解决?
16.CAS概念,原子类实现原理
17.synchronize底层实现,如何实现Lock?
18.手写ajax
19.介绍各种网络协议
20.DNS在网络层用哪个协议,为什么
21.介绍HTTPS协议,详述SSL建立连接过程
22.手写反转单链表
23.手写复杂链表复制
24.代码题:数组a,先单调地址再单调递减,输出数组中不同元素个数,要求。O(1)空间复杂度,不能改变原数组
25.详尽Java和js的垃圾回收机制
26.64匹马,8个赛道,找出最快的四匹。
27.64匹马,8个赛道,找出最快的8匹
28.给出两个升序数组A,B和长度m,n,求K个大的
29.给出数组A,长度n,数组中元素的值位于[0,n-1]之间,求是否有重复元素
30.讲一下浏览器执行过程,多线程与多进程的区别
31.JVM中什么时候进行垃圾回收,什么样的对象可以回收。js是怎么样进行垃圾回收的,请用代码模拟。
32.Spring的主要思想是什么?
33.算法题:实现一个镜像二叉树
34.讲一下js的eventloop
35.TCP为什么是三次握手四次挥手
36.平常做过哪些优化
37.webpack的作用是什么,有写过webpack插件吗
38.vue的路由是怎么实现的
39.为什么有了ip地址,还需要mac地址
40.http 1.x,https,http2都有哪些优点和缺点
41.代码题:实现防抖和节流
42.模拟一下:浏览器请求url到页面加载过程
43.有没有做过数据库优化
44.什么是闭包,你在哪些场景一下用到了闭包
45.你设计一个组件考虑了哪些?
46.说一下js对象的几种继承方式,各有什么缺点?