他家电面有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本身是一个合法单词,可以把当前string设置为空字符串,在之后重新匹配。

第三问:我说第二问的解法可能会产生重复的解,小白就问如何解决。我说了最简单的方法是用set去装结果,然后说想想其它解法。之后沿着这种思路想不下去了,决定换一种思路。思路应该和LeetCode里的Word Break不多,大致就是使用DP或者recursion + memorization。如果整个单词在字典里,就标记下。如果不是,尝试所有的划分方法,把单词划分为2个子单词,再递归下去。说了思路后本来想写的,应该之前做过这种题目,结果小白估计怕我写代码时间太久,就直接到下个问题了。

第四问:如果给了dict,而不仅仅是给了一个函数接口,能不能换种思路。我想大概是要我从dict出发,枚举出所有组合词,直到组合词的长度超过电话号码长度吧。我实现的时候做了一些剪枝,因为每次寻找下一个单词时,都是需要跟下一块号码子字符串对应的(用到了第一问实现的方法),如果不对应,那么就不用继续递归下去了。

第五问:问从字典出发的方法和从号码出发的方法,哪种好。我觉得这个问题比较复杂,就说字典小的时候从字典出发有优势,不然就从号码出发。

第六问:我在解题的时候说字典如果能用字典树构造而不是set,那么解法可以被优化。然后小白就顺藤摸瓜,问如果让我用字典树,怎么写代码。

我写了下,发现要改的地方不少。一大半都得重写,写了一半,然后小白说时间到了。

除开开始10分钟问简历,后面5分钟让我问下问题,余下45分钟感觉根本不可能把所有的题目都写代码,后面2问其实也就够时间写下伪代码。

感觉这一面还是很顺利的,个人觉得combination,enumeration一类的题目一般都不难,唯一难的地方是如何去重,但小白的问题里基本都回避掉了这个难点。

Dropbox电面面经相关推荐

  1. Android 功耗优化(3)---Android后台调度与省电

    Android后台调度与省电 I. Handler: 在进程存活的期间有效使用, Google官方推荐使用. 相关机制可以参见: Android Handler Looper机制 简单易用. 稳定高效 ...

  2. Android 功耗(20)---Android后台调度与省电

    Android后台调度与省电 I. Handler: 在进程存活的期间有效使用, Google官方推荐使用. 相关机制可以参见: Android Handler Looper机制 简单易用. 稳定高效 ...

  3. MakeSpace:什物云存储版Dropbox 融800万美元

    腾讯科技讯 5月5日音讯,纽约一家名为MakeSpace的草创公司推出了一种全新的储物效劳,它以为储物效劳大概象Dropbox那样运作. MakeSpace的首席执行官山姆罗森(Sam Rosen)表 ...

  4. Dropbox免费网盘,实现多台电脑上文件共享和同步文件!!

    申请地址 : https://www.dropbox.com/referrals/NTg5NjA4NjA5 转载自:http://www.williamlong.info/archives/2044. ...

  5. VP9如何给Twitch的电竞直播带来价值?

    本文来自Twitch的科技博客,详细解读了该平台如何将VP9用于其电竞赛事的直播.通过FPGA硬件加速,VP9能极大提升视频直播服务的质量.LiveVideoStack对原文进行了摘译,感谢Twitc ...

  6. 24种工具,跨境电商

    1. SKYPE :传统外贸的人都用!打电话给老外只需要购买卡充值.然而跨境电商的人也是非常实用,很多FREELANCER或者FIVER上的老外都可以加你的SKYPE与你联系来协助你进行外部推广,如发 ...

  7. 2022-2028年中国钢铁电商产业竞争现状及发展前景预测报告

    [报告类型]产业研究 [报告价格]4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国钢铁电商行业市场行业相关概述.中国钢铁电 ...

  8. 2022-2028年中国锂电材料产业投资分析及前景预测报告

    [报告类型]产业研究 [报告价格]¥4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国锂电材料行业市场行业相关概述.中国锂电 ...

  9. 台积电2nm与3nm制程

    台积电2nm与3nm制程 台湾积体电路制造股份有限公司,中文简称:台积电,英文简称:tsmc,属于半导体制造公司.成立于1987年,是全球第一家专业积体电路制造服务(晶圆代工foundry)企业,总部 ...

最新文章

  1. SpringSecurity-短信验证码接口开发
  2. matlab计算斜方差_Matlab求方差,均值,均方差,协方差的函数
  3. 如何把模型表导入数据库
  4. coreData mapView #include
  5. 论文浅尝 | MulDE:面向低维知识图嵌入的多教师知识蒸馏
  6. mysql改原始密码mac_MAC版修改MySQL初始密码的方法
  7. kubernetes k8s一文入门
  8. attrib批量显示文件夹_Windows 下彻底隐藏文件和文件夹的方法
  9. 几行代码构建全功能对象检测模型,这位杜克大学学生做到了!
  10. etherlime-3-Etherlime Library API-Deployed Contract Wrapper
  11. luoguP1594 护卫队
  12. 《Web测试囧事》——1.3 测试Web Service能否正常提供JSON数据
  13. 贾俊平《统计学》常用公式
  14. keil安装及mdk
  15. 接口测试之用例设计技巧
  16. Bootstrap 导航/滑动门(nav)
  17. 家庭收支记账软件Java
  18. Leetcode 1436. Destination City [Python]
  19. APP推广关键词的怎么选词?
  20. 虚拟机中Deepin v20 配置共享文件夹及修改Linux系统环境PATH

热门文章

  1. 3dsmax制作迈克杰克逊-3D建模人物模型教程
  2. 5个超好用的屏幕划词翻译软件,选中文字就能翻译
  3. 计算机英语性考,理工英语1单元自测7形考任务答案
  4. 文件服务器临时文件,使用没有临时文件的节点js将文件上载到休息文件服务器...
  5. 关于a标签的点击事件触发无效的问题
  6. excel不能插入activex控件_用excel做下拉多选菜单
  7. 比劫劫财引发的灾如何化解呢?
  8. [连通块]leetcode2316:统计无向图中无法互相到达点对数(medium)
  9. 52行c代码实现俄罗斯方块
  10. SIMIO三维智能对象仿真模拟软件版本12 功能介绍 和试用下载