上次二面结束后,官网状态依然是“复试”,今天下午六点面试,七点结束,感觉表现一般,目前官网状态没有变灰。
面试问题:
- 自我介绍
- 单点登录原理
- 单点登录中访问域名不同的子系统时,如何携带cookie?(我回答可以通过URL重写,面试官让我说详细点,没回答好,然后我说可以将token放在localstorage中,面试官又问localstorage不区分域名吗,我回答“好像不区分”;最后,我又说cookie的域名可以设置多个)
- 介绍一下你写的博客网站中博客表的设计?
- 标签表怎么设计?(博客和标签多对多,用一个中间表来保存两者的关系)
- 如果删除标签该怎么操作?(需要先删除中间表中的相关记录,再删除标签表中的记录)
- 如果100万篇博客中有70万篇博客都有标签A,如果删除标签A,对性能会有什么影响?(想了半天不知道。。。)
- 说一说线程、进程、协程的区别?
- 页面置换算法
- 手撕代码:实现LRU算法,增加一个put算法,可以为保存的节点指定过期时间(我是用HashMap+LinkedList实现的,写完之后,面试官问我LinkedList的remove方法的复杂度,我脑子抽了一直以为LinkedList是单链表,所以说复杂度为O(n),面试官问我怎么优化成O(1),想了半天也不知道怎么将单链表的删除操作优化成O(1),面试完之后面试官提醒我,我才想起来LinkedList是双链表,删除是O(1)复杂度;此外,我的节点过期时间的实现是在插入的时候保存过期时间,使用get方法时检查节点是否过期,然后面试官问我能不能实现实时删除过期节点,我想了半天没想出来,然后面试就结束了。反问环节我问面试官如何实现实时删除过期节点,发现面试官所说的实时删除不是“实时删除”,只是让我注意LRU淘汰和过期淘汰的冲突点)
虽然感觉表现不好,但是还是希望能过啊
全部评论
(1) 回帖