📣 独立日限时特惠: VIP通行证立减$68
楼主: guzi
跳转到指定楼层
上一主题 下一主题
收起左侧

Google 2015-10-2 MTV 另求教

🔗
airwindow 2015-10-7 08:35:11 | 只看该作者
全局:
stellari 发表于 2015-10-3 16:44
找1/2majority的话,其实没必要移整个范围。可以先取得a[(size-1)/2] == midval的值,如果1/2majority存 ...

受四楼启发...
我觉得Question6可以这么来做:
假设数组的size为len,a = len / 8;分别检测以下9个坐标的值
nums[0], nums[a],nums[a*2],nums[a*3],nums[a*4],nums[a*5],nums[a*6],nums[a*7], nums[len]
因为数组是sorted的,如果存在元素出现的次数more than 1/4 times,那么必然以上有两个相邻的元素share同一个值,找出这些值作为candidates。然后分别使用binary search找出这些值的左边界和右边届。如果如果左右边界之差满足 > len/4. 那么就找到了这个元素。




回复

使用道具 举报

🔗
loveimba 2015-10-8 13:35:43 | 只看该作者
全局:
我ONSITE也是五轮
回复

使用道具 举报

🔗
sevensevens 2015-10-9 02:58:38 | 只看该作者
全局:
airwindow 发表于 2015-10-7 08:35
受四楼启发...
我觉得Question6可以这么来做:
假设数组的size为len,a = len / 8;分别检测以下9个坐标 ...

确实是这么做
回复

使用道具 举报

🔗
 楼主| guzi 2015-10-9 10:59:40 | 只看该作者
全局:
第三题很多人没看懂,解释一下:index为偶数的是值,会出现在结果中,就是你call next()时有可能输出,index为奇数的是它前面那个数出现的次数。不知道说清楚了没。。
回复

使用道具 举报

🔗
qiuxuxing007 2015-10-9 11:13:14 | 只看该作者
全局:
还是不太 清楚啊,能否再举个例子下?
回复

使用道具 举报

🔗
白露为霜 2015-10-11 16:06:39 | 只看该作者
全局:
多谢楼主分享,不过第二题 不是特别明白, 需要考虑时间么,如果只看 A->B 的话,如果有回路出现怎么办呢
回复

使用道具 举报

🔗
大傻杨 2015-10-11 16:56:52 | 只看该作者
全局:
我觉得中国人就是在放水
回复

使用道具 举报

🔗
 楼主| guzi 2015-10-12 05:45:09 | 只看该作者
全局:
白露为霜 发表于 2015-10-11 16:06
多谢楼主分享,不过第二题 不是特别明白, 需要考虑时间么,如果只看 A->B 的话,如果有回路出现怎么办呢

他说假设没回路
回复

使用道具 举报

🔗
 楼主| guzi 2015-10-12 05:51:52 | 只看该作者
全局:
qiuxuxing007 发表于 2015-10-9 11:13
还是不太 清楚啊,能否再举个例子下?

如果输入是 [3,2, 5, 1], 第一次call next(), you get 3, 第二次call next(), you get 3. 第三个call next(), you get 5. So the output should be [3,3,5]. input中只有index为偶数的才可以出现在Output中。input中index的奇数代表它前面那个数能输出几次。

评分

参与人数 1大米 +3 收起 理由
hulahu + 3 感谢分享!

查看全部评分

回复

使用道具 举报

🔗
huanghe0828 2015-10-13 07:27:42 | 只看该作者
全局:
请问楼主过了吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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