一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

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

求解两个面试题

[复制链接] |试试Instant~ |关注本帖
kinggarden2001 发表于 2016-3-12 11:17:27 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类 本科 全职@Two different companies - 内推 - Onsite |Fail在职跳槽

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

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
最近onsite遇到两个题没做出来。

1. 在一个interger array 里 找出最少的subset 然后让他们的和大于一个数。 很像下面这个题。 要O(n) time O(1) space. 面试的时候我想出了类似selection的算法,大体结构也写的差不多。但我觉得这个题在30分钟很难bug free做出来。烙印面的,我是不是不黑了。-google 1point3acres

http://stackoverflow.com/questio ... is-no-less-than-key

2. 另外一个是设计一个data structure支持 Add/Remove/GetRandom 都要O(1),而且要支持duplicates. 我用的是Hashmap + array的做法,这个做法在有duplicates情况下,Remove只能做到lgN, 求大神指点怎么做到O(1)。.鏈枃鍘熷垱鑷1point3acres璁哄潧

评分

1

查看全部评分

本帖被以下淘专辑推荐:

 楼主| kinggarden2001 发表于 2016-3-13 01:11:12 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
顶一下,真心求大牛指点。
回复 支持 反对

使用道具 举报

guixi107 发表于 2016-3-14 12:26:01 | 显示全部楼层
关注一亩三分地微博:
Warald
2, 可以用1个 arrayList + 2个hash map吗? 一个存 value--> {list_of_index_having_same_value},一个存 index -->value?. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴

补充内容 (2016-3-14 12:59):
second though.

one arraylist + one hashmap (Value --> List-of-index) is enough
回复 支持 反对

使用道具 举报

 楼主| kinggarden2001 发表于 2016-3-14 13:08:13 | 显示全部楼层
guixi107 发表于 2016-3-14 12:26
2, 可以用1个 arrayList + 2个hash map吗? 一个存 value--> {list_of_index_having_same_value},一个存 in ...

这就是我的解法啊,有duplicates的时候Remove到不了O(1) 啊。 楼主具体说说?
回复 支持 反对

使用道具 举报

guixi107 发表于 2016-3-15 15:03:59 | 显示全部楼层
kinggarden2001 发表于 2016-3-14 13:08
这就是我的解法啊,有duplicates的时候Remove到不了O(1) 啊。 楼主具体说说?

hmm, 既然value是一样的,随便把其中的一个用末尾的元素换掉,(需要把这个坐标从list去掉,如果list为空的话,把这个entry从map删掉)
求职神器indeed - 在全球最大的求职网站找找适合你的工作?
回复 支持 反对

使用道具 举报

johnjavabean 发表于 2016-3-28 05:30:17 | 显示全部楼层
第一题就是quick select吧...把排序好的部分加起来,但这只能说是average o(n)吧,worst还是n^2的...
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

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

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

custom counter

GMT+8, 2017-3-29 07:41

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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