一亩三分地论坛

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

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

Pocket Gem Intern 电面一轮 跪经

[复制链接] |试试Instant~ |关注本帖
jjdddn1 发表于 2016-2-23 07:58:46 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类 硕士 实习@Pocket Gem - 网上海投 - 技术电面 |Failfresh grad应届毕业生

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

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

x
两分钟前刚结束,稳稳的已跪。 题不难,但是LZ就是脑子抽搐了连 ArrayList 的set 都忘了...

两道题:第一题:. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
Sort array
In the object-oriented language of your choice, write a function that takes as input an array (or equivalent data structure) of objects. These objects are black boxes; you don’t know anything about them, except that they have a priority. The priority can take one of four values: 0, 1, 2, or 3. Your function must sort the array in place by priority. The function must run in O(N) time and O(1) extra space.
*/
enum Priority {
  PRIORITY_ZERO = 0, PRIORITY_ONE = 1, PRIORITY_TWO = 2, PRIORITY_THREE = 3. from: 1point3acres.com/bbs
}.1point3acres缃
public class Thing : SuperThing {. more info on 1point3acres.com
  Priority getPriority();
}
// 10323201 -> 00112233
public void sortPriority( ArrayList < Thing > things ) {
// write hear. visit 1point3acres.com for more.
}


第二题: Inorder Successor in BST
父母节点。 我都没问道follow up. 没有父母节点怎么办....
我觉得我的思路还是立马想出来了....鐣欏璁哄潧-涓浜-涓夊垎鍦
但是平时用eclipse 太多被惯坏了..
然后...


已跪妥妥的了。各位大神加油吧。我闭关反思去了。


-google 1point3acres





. Waral 鍗氬鏈夋洿澶氭枃绔,
补充内容 (2016-2-23 08:30):
刚收到邮件...果然已跪

评分

3

查看全部评分

xiaozhuxiaozhu 发表于 2016-2-23 08:04:58 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
public void sortPriority( ArrayList < Thing > things ) {. From 1point 3acres bbs

. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴}
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-23 08:20:58 | 显示全部楼层
关注一亩三分地微博:
Warald
  1.                 ArrayList<Integer> EbayPractice = new ArrayList<Integer>();
  2.                 int one =0;
  3.                 int two=0;
  4.                 int zero =0;
  5.                 EbayPractice.addAll(Arrays.asList(1,0,3,2,3,2,0,1,3));
  6.                 for(int i=0;i<EbayPractice.size();i++)
    -google 1point3acres
  7.                 {
  8.                         if(EbayPractice.get(i)==0)
  9.                         { 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  10.                                 zero++;
  11.                         }
  12.                         else if(EbayPractice.get(i)==1)
  13.                         {. 1point 3acres 璁哄潧
  14.                                 one++; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  15.                         }
  16.                         else if(EbayPractice.get(i)==2)
  17.                         {
  18.                                 two++;
  19.                         }

  20.                 }
  21.                 for(int i=0;i<EbayPractice.size();i++). 1point3acres.com/bbs
  22.                 {
  23.                         if(i<zero)
  24.                         {
    . 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  25.                                 EbayPractice.set(i, 0);
  26.                         }
  27.                         else if (i<zero+one)
  28.                         {
  29.                                 EbayPractice.set(i, 1);
  30.                         }
  31.                         else if(i<zero+one+two)
  32.                         {
  33.                                 EbayPractice.set(i, 2);.1point3acres缃
  34.                         }
  35.                         else
  36.                         {
  37.                                 EbayPractice.set(i, 3);
  38.                         }
  39.                 }
复制代码


first question.
回复 支持 反对

使用道具 举报

 楼主| jjdddn1 发表于 2016-2-23 08:23:57 | 显示全部楼层

这题不能更改object. 所以算法可能不太一样.... 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
我用的是两次循环...第一次排0,3,第二次排1 或 2....
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-23 08:24:25 | 显示全部楼层
第2题,啥是没有父母节点?

  1.         class TreeNode{
  2.                 int value;
  3.                 TreeNode left;
  4.                 TreeNode right;
  5.                 TreeNode(int value)
  6.                 {
  7.                         this.value = value;
  8.                 }
  9.         }
  10.        
  11.         public TreeNode EbayPractice_inorderSuc(TreeNode root, TreeNode p) {
  12.             TreeNode s = null;
  13.             while (root != null) {
  14.                 if (p.value < root.value) {
  15.                     s = root;
  16.                     root = root.left;
  17.                 }
  18.                 else
  19.                     root = root.right;. Waral 鍗氬鏈夋洿澶氭枃绔,
  20.             }
  21.             return s;
  22.         }
复制代码
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-23 08:28:23 | 显示全部楼层
jjdddn1 发表于 2016-2-23 08:23
这题不能更改object. 所以算法可能不太一样.... 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
我用的是两次循环...第一次排0,3,第二次排1 或 2....
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
没有更改object阿。. Waral 鍗氬鏈夋洿澶氭枃绔,
arraylist.set只是把index 换了
比如
你有2个object
index 0 = priority_two;
index 1 =  priority_one;
我走一遍for loop,然后count一共多少个one 和two.
这种情况1个one,1个two,
我把原来的arraylist, index 0变成是priority_one, index 1 变成priority_two.. 1point3acres.com/bbs
并没有改变每个object的reference 值。
Fisher–Yates shuffle 算法用来shuffle cards,就是这个方法阿,只不过那个是random generate a index for the each card
回复 支持 反对

使用道具 举报

 楼主| jjdddn1 发表于 2016-2-23 08:28:39 | 显示全部楼层
xiaozhuxiaozhu 发表于 2016-2-23 08:24
第2题,啥是没有父母节点?

第二题:
/*
next largest node in bst-google 1point3acres

We have a BST where each node has pointers to its two children AND to its parent. Given a node in the BST, find the next largest node in the BST, e.g. if all the nodes were sorted by value in ascending order, it would be the next on the sorted list.. 鍥磋鎴戜滑@1point 3 acres
. from: 1point3acres.com/bbs
      5
  3       8
1   4   6   9

1 -> 3
4 -> 5
9 -> null
*/
.鐣欏璁哄潧-涓浜-涓夊垎鍦
public Node {
    Node left;
    Node right;. Waral 鍗氬鏈夋洿澶氭枃绔,
    Node parent;
    int value;
}

/*. visit 1point3acres.com for more.
    Returns the next largest node of the tree containing the specified node.
    Returns null if the specified node is the largest node in its tree.
*/
Node next_largest( Node node ) {}
回复 支持 反对

使用道具 举报

whdawn 发表于 2016-2-23 08:31:02 | 显示全部楼层
求问 LZ 网申了多久有的回应
回复 支持 反对

使用道具 举报

 楼主| jjdddn1 发表于 2016-2-23 08:31:18 | 显示全部楼层
xiaozhuxiaozhu 发表于 2016-2-23 08:28
没有更改object阿。
arraylist.set只是把index 换了
比如
.鐣欏璁哄潧-涓浜-涓夊垎鍦
就是说... object 的priority 是不能改的
回复 支持 反对

使用道具 举报

 楼主| jjdddn1 发表于 2016-2-23 08:33:10 | 显示全部楼层
whdawn 发表于 2016-2-23 08:31
求问 LZ 网申了多久有的回应

一周吧,
2月7号申的,12号拿到OA,18号拿到Interview,今日一轮跪了。
回复 支持 反对

使用道具 举报

whdawn 发表于 2016-2-23 08:36:49 | 显示全部楼层
jjdddn1 发表于 2016-2-22 19:33
一周吧,
2月7号申的,12号拿到OA,18号拿到Interview,今日一轮跪了。

这么快。。。patpat,现在机会还多,别太灰心~
回复 支持 反对

使用道具 举报

shiloh00 发表于 2016-2-23 08:41:00 | 显示全部楼层
pocket gem的题比我想象的简单- -他们都说bar很高的  早知道就找个内推了
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-23 09:09:49 | 显示全部楼层
jjdddn1 发表于 2016-2-23 08:31. Waral 鍗氬鏈夋洿澶氭枃绔,
就是说... object 的priority 是不能改的

明白你的意思了,我写错了,你的方法是对的。
回复 支持 反对

使用道具 举报

小鱼妹妹 发表于 2016-3-9 07:39:36 | 显示全部楼层
楼主的面试官是谁呀~
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-7-29 19:42

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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