字节算法没做出来还有戏吗
#字节##面试#字节8.12晚三面,面试官一开始问了问项目(半小时多点),然后算法出了一道带滑动过期(TTL)、数量上限和LRU 淘汰的cache,刚看到这题我就吓坏了,因为本鼠做代码量大的题经常阴沟里翻船...
鼠鼠的想法是双向链表 + 哈希表(lru标准套路)+小根堆优化时间复杂度,写了很久,算上测试用例写了一百行,用的还是飞书那个ide巨不习惯。结果运行测试用例时候莫名其妙的报错,调试了半天也没调试出来。面试官很有耐心,一直在等,一直到面试过去1小时40分钟了(我都不记得这道题做了多久),已经晚上九点多了,才叫停了。然后我大致说了下思路,面试官说这道题不需要用小根堆,用双向链表+哈希表就行,我说我想优化下时间复杂度,他说接下来让我在本地再试一下
后来面试官还是正常让我反问了,回答的还挺认真,我问他新人前几个月的发展,他还说了“过来之后”之类的话,看起来也不像完全没戏?
#牛客AI配图神器#
然后鼠鼠真的在本地ide试了下,结果做出来了,今天让hr帮忙转述给面试官,反正我已经把能做的都做了,只能听天由命了,目前面完22小时还没结果
8.14更新 联系hr,说面试官还没反馈
看样子是要横向了,往好了想没因为算法没做出来秒挂
鼠鼠的想法是双向链表 + 哈希表(lru标准套路)+小根堆优化时间复杂度,写了很久,算上测试用例写了一百行,用的还是飞书那个ide巨不习惯。结果运行测试用例时候莫名其妙的报错,调试了半天也没调试出来。面试官很有耐心,一直在等,一直到面试过去1小时40分钟了(我都不记得这道题做了多久),已经晚上九点多了,才叫停了。然后我大致说了下思路,面试官说这道题不需要用小根堆,用双向链表+哈希表就行,我说我想优化下时间复杂度,他说接下来让我在本地再试一下
后来面试官还是正常让我反问了,回答的还挺认真,我问他新人前几个月的发展,他还说了“过来之后”之类的话,看起来也不像完全没戏?
#牛客AI配图神器#
然后鼠鼠真的在本地ide试了下,结果做出来了,今天让hr帮忙转述给面试官,反正我已经把能做的都做了,只能听天由命了,目前面完22小时还没结果
8.14更新 联系hr,说面试官还没反馈
看样子是要横向了,往好了想没因为算法没做出来秒挂
全部评论
手撕不出来挺减分的。而且还是力扣上这么基础的题目
应该不行了,这个有一票否决权
看看马消,招大量研发岗位,待遇也很顶级

三面经典lru,老登不会复杂算法就喜欢出这种设计题
耐面王
lru扩展挺常见了现在,题主这个应该就惰性删除就行了,原版lru+ttl然后get和put加一下判断逻辑。再者的话就是用一个定时任务去删除过期的
就惰性删除就好吧,满了再去遍历一遍删除过期的就行了

这是秋招吗

每次存的时候还要存时间戳么?
有原题吗大佬 没听懂
之前面测开也做了这道,感觉写的差不多就行了
这个ttl是啥意思,每访问一次减一吗
佬能说一下这个ttl的细节吗
,假如每次get都刷新ttl的话那链表头的都是最新的吧,链表也是天然按ttl排序的,跟常规lru好像没啥区别
?
字节挺重视算法的
相关推荐

点赞 评论 收藏
分享