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

2.23 1分钟前的面经

全局:

2016(1-3月) 码农类General 硕士 实习@google - 内推 - 技术电面  | | Other | 应届毕业生

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
第一轮,国人小哥。
给我一堆unsorted数字,问我可不可以等分成若干组,每组由五个连续的整数组成。
eg: 1,2,3,4,5,4,5 -> false
1,2,3,4,5,2,3,4,5,6 ->true
follow up: 问我可不可以等分成若干组,每组由五个重复数组成。
follow up2: 每组由k个连续数组成。   k>=3
第二轮: 本地小
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
直接跟他说了这不像是面试,更像是捞家常。

国人小哥最后一题follow up 有点卡住,不够时间没写完,不知道会不会给同胞面子。第二轮这个我就不知道他会怎么报上去了,不过感觉交了个朋友,还是不错的。

评分

参与人数 2大米 +23 收起 理由
Jester_Z + 20 感谢分享!
jak47042007 + 3 感谢分享!

查看全部评分


上一篇:Amazon实习电面
下一篇:现在才进pool是不是基本就淹死了(附面经)
推荐
Littles 2016-5-11 04:58:39 | 只看该作者
全局:
用TreeMap做可以吗?
  1. public static boolean isValid(int[] nums) {
  2.                 if (nums == null || nums.length < 5) {
  3.                         return false;
  4.                 }
  5.                 TreeMap<Integer,Integer> map = new TreeMap<Integer,Integer>();
  6.                 for (int i = 0; i < nums.length; i++) {
  7.                         map.put(nums[i], map.containsKey(nums[i]) ? map.get(nums[i])+1 : 1);
  8.                 }

  9.                 while (map.size() > 0) {
  10.                         int t = map.firstKey();
  11.                         int length = 0;
  12.                         while (length < 5 && map.containsKey(t)) {
  13.                                 map.put(t, map.get(t)-1);
  14.                                 if (map.get(t) == 0) {
  15.                                         map.remove(t);
  16.                                 }
  17.                                 t++;
  18.                                 length++;
  19.                         }
  20.                         if (length < 5) {
  21.                                 return false;
  22.                         }
  23.                 }
  24.                 return true;
  25.         }
复制代码
回复

使用道具 举报

全局:
第一题的hash
  1.         public boolean group(int [] arr){
  2.                 HashMap<Integer, Integer> map = new HashMap<>();
  3.                 int max = Integer.MIN_VALUE;
  4.                 for(int i: arr){
  5.                         map.put(i, map.containsKey(i)? map.get(i)+1:1);
  6.                         max = Math.max(i,max);
  7.                 }
  8.                 while(map.size() > 0){
  9.                         int length = 0, t = max;
  10.                         while(length < 5 && map.containsKey(t)){
  11.                                 map.put(t, map.get(t) - 1);
  12.                                 if(map.get(max) == 0)
  13.                                         max--;
  14.                                 if(map.get(t) == 0)
  15.                                         map.remove(t);
  16.                                 t--;
  17.                                 length++;
  18.                         }
  19.                         if(length < 5) return false;
  20.                 }
  21.                 return true;
  22.         }
复制代码
回复

使用道具 举报

全局:
jjustc 发表于 2016-6-12 10:59
Java我不太了解 不过我搜了一下看到说TreeMap是用红黑树实现的,insert和搜索都是logN,建TreeMap那一步 ...

我也是这么觉得,为啥大家都不喜欢直接sort,建hashmap, 然后每次从最小的元素找连续的五个数呢?
回复

使用道具 举报

无效楼层,该帖已经被删除
🔗
夜辉冥 2016-3-3 15:12:07 | 只看该作者
全局:
第一题你是怎么做的? Hash表?
回复

使用道具 举报

🔗
Alice0701 2016-3-30 06:06:19 | 只看该作者
全局:
楼主牛掰。。。面试得如此享受。。。
回复

使用道具 举报

🔗
jy_121 2016-4-28 07:04:24 | 只看该作者
全局:
第一题除了遍历还有其他方法吗?
回复

使用道具 举报

🔗
Littles 2016-5-11 04:50:06 | 只看该作者
全局:

这个跑不过{1,2,3,4,5,8,9,10,11,12}这样中间有gap的例子吧。是不是可以每一次while结束时再找一次最大值?
回复

使用道具 举报

🔗
Effiel 2016-5-11 07:36:09 | 只看该作者
全局:
Littles 发表于 2016-5-11 04:58
用TreeMap做可以吗?

赞一个,代码很简洁,是不是忘掉了第一个count可能大于1的case?

补充内容 (2016-5-14 01:34):
看错了,这个code是对的,再赞一个
回复

使用道具 举报

🔗
Littles 2016-5-13 23:21:45 | 只看该作者
全局:
Effiel 发表于 2016-5-11 07:36
赞一个,代码很简洁,是不是忘掉了第一个count可能大于1的case?

啥意思,第一个count?
回复

使用道具 举报

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

本版积分规则

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