Dropbox电面面经

本文分享了作者的Dropbox电面经历,包括两轮面试的详细内容。第一轮面试中,作者用deque实现了统计点击量的hit和getHit函数,并讨论了并行程序的设计。第二轮面试涉及电话号码与单词组合问题,通过DFS解决,并讨论了避免重复解的方法和字典树的应用。整个面试过程展现了从不同角度解决问题的思考。
摘要由CSDN通过智能技术生成

他家电面有2轮,等待onsite。。。

电面1:

国人MM面的,这点感觉很难得。统计最近5分钟的点击量,实现hit和getHit两个函数。这题是他家高频题,我用deque实现的,hit的均摊时间是O(1),觉得应该差不多最优了吧。

后来要求写个并行程序,忘记问是写共享内存的还是分布式的了,写的有点卡,有时候纠结到底用lock还是用多个local copy,感觉设计起来其实就是CAP理论的实践。如果要求consistency,就不能partition,或者说使用lock的话availability会很低。如果我做多个local copy,感觉无法保证consistency。最后没时间了就只是谈了下大概设计思路。

 

电面2:

MIT小白面的,感觉比较寡言少语,面试的时候不怎么说话,就安安静静看我写代码。

第一问:给一个电话号码,并且提供一个字典,要求给出所有与号码对应的单词。这个题目跟LeetCode里的letter Combinations of a Phone Number比较类似,DFS秒掉。简单分析了下时间复杂度。

第二问:如果dropbox这种单词不在字典里,但是drop和box都在,那么dropbox也算,这种情况怎么办。我首先思路是沿袭第一问的方案,在DFS的函数里,除了一个string作为当前的string,多加了一个string参数作为merged string。思路稍作修改,对于一个字母,有两个选择:1)可以append到当前string上;2)如果当前的string本身是一个合法单词,可以把当前

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值