传说中的谷歌招聘委员会成员之一,从幕后走出来,教你学系统设计!


一亩三分地论坛

 找回密码
 获取更多干活,快来注册
天天打游戏、照样领工资、还办H1B
这份工作你要不要?
把贵司招聘信息放这里
查看: 2151|回复: 4
收起左侧

Pocket Gems

[复制链接] |试试Instant~ |关注本帖
public_jian 发表于 2015-5-8 09:36:41 | 显示全部楼层 |阅读模式

2015(4-6月) 码农类 硕士 全职@PoketGem - 网上海投 - 技术电面 |Passfresh grad应届毕业生

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

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

x
May,5 面的。
面试官是美国小哥~~~先让讲一个自己喜欢的project。
然后开始说让写代码。之前在地里面看到过这道题目。含有三元运算符的字符串,构建一棵树。
小哥给我举了个例子。
a?b:c
建成的树应该是:
   a
  / \
b    c
而后问我,如果是 a?b?c:d:e,建成的树应该是什么样的?
我说是这个样子的:
    a
   / \
  b  e
/ \ 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
c   d.1point3acres缃
小哥说,恩。你给我写个method就把这样一个string转成一棵树?

写完之后,问我还有什么问题?
-------------------------- 我是分割线-------------------------------------.鏈枃鍘熷垱鑷1point3acres璁哄潧
这道题用recursion写起来比较好写。关键的一步是:在检测到问号(if charAt(i) == '?')之后,新建完成这个左孩子节点,马上检测是否是冒号,然后去建右节点(在if charAt(i) == '?'里面写)()。
恩,就这样,大家加油。. more info on 1point3acres.com











. visit 1point3acres.com for more.

. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷

补充内容 (2015-5-8 22:41):
----------这是一轮电面-----------
notturno 发表于 2015-5-8 21:01:36 | 显示全部楼层
这是一面吗?. visit 1point3acres.com for more.
虽然还是面经的题,但已经不是烂大街的那两道了,有种要开始换题的感觉
回复 支持 反对

使用道具 举报

ryuichist 发表于 2015-5-11 17:15:49 | 显示全部楼层
notturno 发表于 2015-5-8 21:01
这是一面吗?
虽然还是面经的题,但已经不是烂大街的那两道了,有种要开始换题的感觉
. 鍥磋鎴戜滑@1point 3 acres
这个也是电面的题目,只是出现的频率不是很高
回复 支持 反对

使用道具 举报

jaly50 发表于 2015-8-24 03:23:50 | 显示全部楼层
晒一下我这题的代码, 有路过的帮我看看对不对...感谢~
  1.          static class TreeNode {
  2.              int val;-google 1point3acres
  3.               TreeNode left;
  4.               TreeNode right;
  5.              TreeNode(int x) { val = x; }
  6.          }
  7.         public  static TreeNode convert(String ternary) {
  8.                 if (ternary==null || ternary.isEmpty()) return null;
    . Waral 鍗氬鏈夋洿澶氭枃绔,
  9.                 char[] chs = ternary.toCharArray();
  10.                 //每次只把root压栈
  11.                 Stack<TreeNode> stack = new Stack<TreeNode>();
  12.                 TreeNode cur=new TreeNode(chs[0]);
  13.                 TreeNode root= cur;
  14.                 for (int i=1; i<chs.length; i+=2) {. more info on 1point3acres.com
  15.                         if (chs[i]=='?') {
  16.                                 stack.push(cur);
  17.                                 TreeNode node = new TreeNode(chs[i+1]);.鏈枃鍘熷垱鑷1point3acres璁哄潧
  18.                                 cur.left = node;
  19.                                 cur = node;
  20.                         }
  21.                         else if (chs[i]==':') {
  22.                                 cur = stack.pop();
  23.                                 TreeNode node = new TreeNode(chs[i+1]);
  24.                                 cur.right = node;. From 1point 3acres bbs
  25.                                 cur = node;
  26.                                
  27.                         }
  28.                 }
  29.                 return root;
  30.         }
复制代码
回复 支持 反对

使用道具 举报

cu0817 发表于 2015-10-15 01:00:44 | 显示全部楼层
jaly50 发表于 2015-8-24 03:23
晒一下我这题的代码, 有路过的帮我看看对不对...感谢~
. 鍥磋鎴戜滑@1point 3 acres
为啥要转 chararray?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-9-24 09:45

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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