Dropbox电面面经

他家电面有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一类的题目一般都不难,唯一难的地方是怎样去重。但小白的问题里基本都回避掉了这个难点。

时间: 2024-11-09 10:27:10

Dropbox电面面经的相关文章

(转)625某电商网站数据库宕机故障解决实录(上)

625某电商网站数据库特大故障解决实录(上) 原文:http://oldboy.blog.51cto.com/2561410/1431161 这是一次,惊心动魄的企业级电商网站数据库在线故障解决实录,故障解决的过程遇到了很多问题,思想的碰撞,解决方案的决策,及实际操作的问题困扰,老男孩尽量原汁原味的描述恢复的全部过程及思想思维过程!老男孩教育版权所有,本内容禁止商业用途. 目录: 625某电商网站数据库特大故障解决实录... 1 1接到电商客户报警... 1 1.1与客户初步沟通... 1 1.

PHP电商订单自动确认收货redis队列

一.场景 之前做的电商平台,用户在收到货之后,大部分都不会主动的点击确认收货,导致给商家结款的时候,商家各种投诉,于是就根据需求,要做一个订单在发货之后的x天自动确认收货.所谓的订单自动确认收货,就是在在特定的时间,执行一条update语句,改变订单的状态. 二.思路 最笨重的做法,通过linux后台定时任务,查询符合条件的订单,然后update.最理想情况下,如果每分钟都有需要update的订单,这种方式也还行.奈何平台太小,以及卖家发货时间大部分也是密集的,不会分散在24小时的每分钟.那么,

互联网之道,看电商的数据化管理方案

关于数据化管理.我们可以将该模块的数据工作分成两个部分,一是通过数据来辅助日常工作,让日常工作中的选择判断更加规范,这是用数据来做事的.另一个是通过数据来评价工作业绩,让针对相关工作的管理更加规范,这是用数据来管理的.我们先看做事的,商品在零售电商企业中一般都走过下面的几个过程: 商品从采购开始到最终卖出去,按照商品的流程走下去,但是商品的售卖情况.退货情况又反过来影响商品的采购选择.在每个节点是有不同的事情要做(运输这个节点,很多情况运输是由供应商来负责的,所以可能零售商没什么事需要做),本篇

杭电 HDU 1164 Eddy's research I

Eddy's research I Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 7117    Accepted Submission(s): 4268 Problem Description Eddy's interest is very extensive, recently  he is interested in prime

hdu 1016 Prime Ring Problem DFS解法 纪念我在杭电的第一百题

Prime Ring Problem Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 29577    Accepted Submission(s): 13188 Problem Description A ring is compose of n circles as shown in diagram. Put natural num

构建高并发高可用的电商平台架构实践

从各个角度总结了电商平台中的架构实践,由于时间仓促,定了个初稿,待补充完善,欢迎大家一起交流. 转载请声明出处:http://blog.csdn.net/yangbutao/article/details/12242441 作者:杨步涛 关注分布式架构.大数据.搜索.开源技术 QQ:306591368 技术Blog:http://blog.csdn.net/yangbutao 一. 设计理念 1.      空间换时间 1)      多级缓存,静态化 客户端页面缓存(http header中包

从通威产业变迁看电商就业前景报告v1.1

负责人:贺茹 合伙人:郭鹏微 签约员工:张瑞雪 高媛.王乐乐 进度看板 贺茹    ---  成长周期的前景分析和位置讨论 郭鹏微  ---  技术前景与市场前景的分析 张瑞雪  ---  五力模型分析及资源罗列 高媛    ---  总结通威的关键资源 王乐乐  ---  战略任务梳理和关键岗位罗列 项目分析目标 1.搞清光伏盒子和饲料大王产业链分析 2.分析光伏盒子和饲料大王的技术优势.企业文化.销售网络. 3.总结通威关键资源 (1.)长板如何发挥 (2.)短板如何避免 4.梳理关键岗位,

跨境电商网站运营和站外引流方式

做跨境电商无论是独立运营网站还是在平台开店,都离不开自己网站的运营和引流,这也是每个电商团队或卖家现在都在努力去做的事情,那么网站的运营和引流都需要哪些方法?在运营时又有哪些技巧呢? 一.对Internet Marketing的整体认识 通常我们在做一个网站的时候,不仅仅是做了一个网站,对整个网站的认知和把控也是我们需要做的事情.而做网站运营,最重要的就是要清楚地知道用户需要什么,用户想找到什么,我们就是为他们提供一个确切可行的操作方案. 从上图中的Internet marketing tree

电商APP制作,平台选的好流量自然少不了

随着互联网的崛起和迅猛发展,电子商务在我国的发展也进入了密集发展和创新发展的新阶段.电商巨头阿里巴巴.京东.聚美优品.唯品会等均开发了专属的APP应用,并积累了大量忠实用户,取得了可观的收益.纵观整个电商行业,移动化.互联网化成为大趋势.越来越多的商家开始投身投身于"互联网+"的大潮中,而从事电商运营,电商APP制作是不可或缺的一个环节.但从公司运营成本及团队结构设置等方面考虑,很多企业并没有配备APP应用开发团队.如何才能够拥有一款属于自己的电商APP,成了很多商家的面临的难题. 为