某大家都会用的app一面面经
本来想随想面一下,牛魔的狠狠拷打了一个小时
拷打实习和项目,发现项目问题并对项目提出改进意见(沟槽的面了这么多场,项目总能被挑出新问题
问实习时解决了什么性能问题,狠狠的抠细节,就是想看我有没有真的做这些事
八股部分
(全都是我的八股专栏里面包含的内容:https://www.nowcoder.com/discuss/660899447991201792?sourceSSR=users
1.什么是线程死锁?
2.怎么排查线程死锁?
3.怎么避免死锁
4.ReentrantLock的原理(其他线程没拿到锁会怎么样?我说会呆在等待队列里。追问:最多会等待多长时间?我:你这是人能问的问题?释放锁后怎么通知等待锁的线程?等待队列里面具体存的什么东西?)
5.ConcurrentHashMap的put过程(我说不会,给他讲了hashmap的put过程)
6.hashmap底层为什么链表改为红黑树的阈值是 8?(为什么选择8?我说因为泊松分布。什么是泊松分布?我说这是高数大一下的内容)
7.为什么链表要改为红黑树
8.为什么是红黑树不是平衡二叉树?有什么区别
9.红黑树的自旋过程?让我画个图,我画个蛋啊直接说不会
场景题:
假如有一个1G大小的文件,文件里每一行是一个词,每个词的大小不超过16byte,要求返回出现频率最高的100个词。内存大小限制是10M(具体答案在我今天发的超全海量数据设计题帖子里面,感兴趣的话可以看看:https://www.nowcoder.com/discuss/673617167975260160?sourceSSR=users)
反问环节:
如果过了后面还有几轮面试?
2轮技术面
#软件开发笔面经##软件开发投递记录##牛客创作赏金赛#