一亩三分地论坛

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

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

谷歌fulltime phone screen面筋,已跪

[复制链接] |试试Instant~ |关注本帖
jyttwc901231 发表于 2016-6-9 04:25:46 | 显示全部楼层 |阅读模式

2013(4-6月) 码农类 硕士 全职@Google - 猎头 - 技术电面 |Fail在职跳槽

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

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

x
recruitor email找到我。问我有没有兴趣面谷歌。由于Lz自己确实在准备跳槽。只是没准备好。于是想面一个试试。
电话接通了没有废话,直接做题。

给一个tree,每一个treeNode多2个指针pre next但是是空的。要求按inorder的顺序把指针连起来。. Waral 鍗氬鏈夋洿澶氭枃绔,
Lz用recursion。写的不好。. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
followup是怎么实现insert方法。还问了时间复杂度和空间复杂度。
第一次面试太紧张,已跪。
祝大家早日找到工作。

评分

2

查看全部评分

本帖被以下淘专辑推荐:

printf_ll 发表于 2016-10-9 06:30:23 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
来贴个代码,java的,stack实现
  1. public class InorderNext {. Waral 鍗氬鏈夋洿澶氭枃绔,

  2.         public static void main(String[] args) {
  3.                 TreeNode root=new TreeNode(20);. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  4.                 TreeNode r1=new TreeNode(10);
  5.                 TreeNode r2=new TreeNode(30); 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  6.                 root.left=r1;root.right=r2;.鐣欏璁哄潧-涓浜-涓夊垎鍦
  7.                 TreeNode r3=new TreeNode(5);
  8.                 TreeNode r4=new TreeNode(15);
  9.                  r1.left=r3;r1.right=r4;
  10.                 TreeNode r5=new TreeNode(12);
  11.                 TreeNode r6=new TreeNode(17);
  12.                 r4.left=r5;r4.right=r6;
  13.                 TreeNode r7=new TreeNode(16);
  14.                 r6.left=r7;
  15.                 InorderNext i=new InorderNext();
  16.                 i.next(root);. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  17.                 TreeNode tmp=r3;
  18.                 while(tmp!=null){.鐣欏璁哄潧-涓浜-涓夊垎鍦
  19.                         System.out.print(tmp.val+",");
  20.                         tmp=tmp.next;
  21.                 }
  22.                 -google 1point3acres
  23.         }. 1point3acres.com/bbs
  24.        
  25.         private void next(TreeNode r){
  26.                 Stack<TreeNode> stack=new Stack<>();
  27.                 while(r!=null){
  28.                         stack.push(r);
  29.                         r=r.left;
  30.                 }
  31.                
  32.                 while(!stack.isEmpty()){
  33.                         TreeNode p=stack.pop();
  34.                         if(p.right!=null){
  35.                                 TreeNode right=p.right;
  36.                                 while(right!=null){
  37.                                         stack.push(right);
  38.                                         right=right.left;. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  39.                                 }
  40.                         }. From 1point 3acres bbs
  41.                         if(stack.isEmpty()){
  42.                                 p.next=null;
  43.                                 return;
  44.                         }
  45.                         p.next=stack.peek();
  46.                 }
  47.         }

  48. }. Waral 鍗氬鏈夋洿澶氭枃绔,

  49. class TreeNode{. visit 1point3acres.com for more.
  50.         int val;
  51.         TreeNode left;
  52.         TreeNode right;
  53.         TreeNode next;
  54.         public TreeNode(int v){
  55.                 this.val=v;
  56.                 this.left=null; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  57.                 this.right=null;
  58.                 this.next=null;
  59.         }
  60. }
复制代码
回复 支持 1 反对 0

使用道具 举报

handsomecool 发表于 2016-6-9 05:21:21 | 显示全部楼层
关注一亩三分地微博:
Warald
recursion写起来不是更简洁吗?

  1. void convert(TreeNode* n, TreeNode* &last){. from: 1point3acres.com/bbs
  2.     . 1point3acres.com/bbs
  3.    
  4.     if(n) {
  5.         
  6.         convert(n->left, last);
  7.         
  8.         if(last){
  9.             last->next = n;
  10.             n->prev = last;
  11.         }
  12.         . 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
  13.         last = n;
    . from: 1point3acres.com/bbs
  14.         
  15.         convert(n->right, last);
  16.     }
  17. }
复制代码
回复 支持 1 反对 0

使用道具 举报

blackrose 发表于 2016-6-9 04:36:24 | 显示全部楼层
这个用stack inorder 比较好写
回复 支持 反对

使用道具 举报

 楼主| jyttwc901231 发表于 2016-6-9 04:38:01 | 显示全部楼层
blackrose 发表于 2016-6-9 04:36. visit 1point3acres.com for more.
这个用stack inorder 比较好写

嗯,我挂了电话就想起来stack好写。。。。打电话的时候太紧张。。什么都想不起来。。。。
求职神器indeed - 在全球最大的求职网站找找适合你的工作?
回复 支持 反对

使用道具 举报

yueliu2366 发表于 2016-6-9 04:40:01 | 显示全部楼层
blackrose 发表于 2016-6-9 04:36.鐣欏璁哄潧-涓浜-涓夊垎鍦
这个用stack inorder 比较好写

感觉你是大神啊。。。所有题目都能看见你快速解答。。
回复 支持 反对

使用道具 举报

 楼主| jyttwc901231 发表于 2016-6-9 04:41:30 | 显示全部楼层
yueliu2366 发表于 2016-6-9 04:40
感觉你是大神啊。。。所有题目都能看见你快速解答。。
. visit 1point3acres.com for more.
快下班了。才有空刷一下论坛。。。
回复 支持 反对

使用道具 举报

blackrose 发表于 2016-6-9 05:07:50 | 显示全部楼层
楼主的follow up 是insert一个BST node 吗
回复 支持 反对

使用道具 举报

wzy0791 发表于 2016-6-9 05:21:40 | 显示全部楼层
Recursion不太好搞,只能用Stack了
回复 支持 反对

使用道具 举报

 楼主| jyttwc901231 发表于 2016-6-9 08:15:01 | 显示全部楼层
handsomecool 发表于 2016-6-9 05:21
recursion写起来不是更简洁吗?

嗯,我觉得这样也行。。。。
回复 支持 反对

使用道具 举报

 楼主| jyttwc901231 发表于 2016-6-9 08:15:18 | 显示全部楼层
wzy0791 发表于 2016-6-9 05:21.鏈枃鍘熷垱鑷1point3acres璁哄潧
Recursion不太好搞,只能用Stack了
. 1point3acres.com/bbs
recursion其实也行,见楼上
回复 支持 反对

使用道具 举报

jjustc 发表于 2016-6-16 04:52:27 | 显示全部楼层
请问 insert方法是指什么意思?谢谢1
回复 支持 反对

使用道具 举报

 楼主| jyttwc901231 发表于 2016-6-16 05:23:05 | 显示全部楼层
jjustc 发表于 2016-6-16 04:52
请问 insert方法是指什么意思?谢谢1

就是问你怎么维护链表的顺序。。。
回复 支持 反对

使用道具 举报

chaosMonkey 发表于 2016-11-14 18:05:29 | 显示全部楼层
lz咋不准备一下再面呢
回复 支持 反对

使用道具 举报

 楼主| jyttwc901231 发表于 2016-11-15 23:02:07 | 显示全部楼层
chaosMonkey 发表于 2016-11-14 18:05
lz咋不准备一下再面呢

在准备,谷歌冷冻期一年
回复 支持 反对

使用道具 举报

chaosMonkey 发表于 2016-12-11 11:10:35 | 显示全部楼层
jyttwc901231 发表于 2016-6-16 05:23
就是问你怎么维护链表的顺序。。。

请问是利用insert的方法给链表排序吗
回复 支持 反对

使用道具 举报

 楼主| jyttwc901231 发表于 2016-12-11 11:13:28 | 显示全部楼层
chaosMonkey 发表于 2016-12-11 11:10. Waral 鍗氬鏈夋洿澶氭枃绔,
请问是利用insert的方法给链表排序吗

是让你实现树的insert方法,然后要让List继续是inorder
回复 支持 反对

使用道具 举报

chaosMonkey 发表于 2016-12-11 11:31:28 | 显示全部楼层
jyttwc901231 发表于 2016-12-11 11:13. 1point3acres.com/bbs
是让你实现树的insert方法,然后要让List继续是inorder
. more info on 1point3acres.com
谢谢lz回复  那这就是往BST里面插入一个node的意思吧,同时要维护list顺序
回复 支持 反对

使用道具 举报

 楼主| jyttwc901231 发表于 2016-12-14 00:01:05 | 显示全部楼层
chaosMonkey 发表于 2016-12-11 11:31
谢谢lz回复  那这就是往BST里面插入一个node的意思吧,同时要维护list顺序
. 1point3acres.com/bbs
是,就是这个意思。。。
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2017-3-30 02:33

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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