May 2009 - May 2017 论坛八周年-你的足迹,我的骄傲


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 1092|回复: 12
收起左侧

BloombergOnCampus第二轮11.11

[复制链接] |试试Instant~ |关注本帖
cnsudo 发表于 2015-11-12 05:14:58 | 显示全部楼层 |阅读模式

2015(10-12月) 码农类 本科 全职@Bloomberg - 校园招聘会 - 校园招聘会 |Otherfresh grad应届毕业生

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干活,快来注册

x
一个中国女面试官,上来先问简历两题
1. add two linkedlist
e.g.
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷          1->2->3
+  4->5->3->8
=  4->6->6->1


2. 解释: 自己设计数据结构怎么实现网页浏览器的 list of most recently visted websites 和 list of most frequently visted websites.


补充内容 (2015-11-12 05:15):
typo: visted->visited

评分

2

查看全部评分

tanpf5 发表于 2015-11-12 10:29:42 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
第二题蛮有意思的,楼主怎么实现的?

补充内容 (2015-11-12 10:44):
recently visited用linked list,frequently visited用array list?frequently visited有没有更好的方法?
回复 支持 反对

使用道具 举报

 楼主| cnsudo 发表于 2015-11-13 08:22:13 | 显示全部楼层
关注一亩三分地微博:
Warald
tanpf5 发表于 2015-11-12 10:29
第二题蛮有意思的,楼主怎么实现的?

补充内容 (2015-11-12 10:44):

recently visited我用的是Leetcode LRU Cache的做法,frequently我是想直接用arraylist呢,面的比较虚。。面试官也不懂为什么用double linked list要我举例子解释,她也不知道Leetcode那题,估计跪了。
回复 支持 反对

使用道具 举报

tanpf5 发表于 2015-11-13 22:18:49 | 显示全部楼层
cnsudo 发表于 2015-11-13 08:22
recently visited我用的是Leetcode LRU Cache的做法,frequently我是想直接用arraylist呢,面的比较虚。 ...

。。面试官都已经跟不上你的思路了。。。我只是单纯的觉得recently visited直接linked list查找添加删除的功能就可以实现吧,而且删除和插入的效率都很高
回复 支持 反对

使用道具 举报

royal_916 发表于 2015-11-16 06:01:13 | 显示全部楼层
第二题那个frequently是不是可以用heap效率高? 是类似于topk frequency么?
回复 支持 反对

使用道具 举报

 楼主| cnsudo 发表于 2015-11-16 15:28:24 | 显示全部楼层
royal_916 发表于 2015-11-16 06:01
第二题那个frequently是不是可以用heap效率高? 是类似于topk frequency么?

对。但是这个模型有两个动作:1. url浏览count+1;2.打印topK,所以我觉得用arraylist+hashmap做时间上效率高。当时面试官也没反馈,所以我也不知道什么方法更合理
回复 支持 反对

使用道具 举报

aiweiwei 发表于 2015-11-17 02:07:55 | 显示全部楼层
多谢楼主,第一题,我想的方法是需要用O(N)space的,转化为array,然后相加后再转化为linked list,请问楼主有o(N)时间o(1)空间的方法吗?
回复 支持 反对

使用道具 举报

 楼主| cnsudo 发表于 2015-11-17 03:00:16 | 显示全部楼层
aiweiwei 发表于 2015-11-17 02:07
多谢楼主,第一题,我想的方法是需要用O(N)space的,转化为array,然后相加后再转化为linked list,请问 ...

先reverse两个linkedlist,算完结果再把结果reverse回来
回复 支持 反对

使用道具 举报

royal_916 发表于 2015-11-17 04:38:18 | 显示全部楼层
cnsudo 发表于 2015-11-16 15:28. from: 1point3acres.com/bbs
对。但是这个模型有两个动作:1. url浏览count+1;2.打印topK,所以我觉得用arraylist+hashmap做时间上效 ...

那能具体说一下arraylist的思路嘛?是hashmap的value存index?
回复 支持 反对

使用道具 举报

aiweiwei 发表于 2015-11-17 04:40:02 | 显示全部楼层
cnsudo 发表于 2015-11-16 15:28
对。但是这个模型有两个动作:1. url浏览count+1;2.打印topK,所以我觉得用arraylist+hashmap做时间上效 ...

我能明白楼主的意思,hash肯定要记录key和对应的count,浏览的数量,然后用一个array记录前k个最大的key?
回复 支持 反对

使用道具 举报

aiweiwei 发表于 2015-11-17 04:40:47 | 显示全部楼层
cnsudo 发表于 2015-11-17 03:00
先reverse两个linkedlist,算完结果再把结果reverse回来

哦,对对对对对,最基本的reverse linkedlist.........
回复 支持 反对

使用道具 举报

头像被屏蔽
Ci_SkyII 发表于 2015-11-17 04:46:26 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

 楼主| cnsudo 发表于 2015-11-17 05:56:23 | 显示全部楼层
Ci_SkyII 发表于 2015-11-17 04:46
recursive第一题吧更方便一些。

对,我的第一想法也是这个。但是她让考虑stack overflow,不让用
回复 支持 反对

使用道具 举报

本版积分规则

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2017-5-30 17:09

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表