推荐:数据科学课程和书籍清单以及培训讲座


一亩三分地论坛

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

一亩三分地官方iOS手机应用下载
查看: 2082|回复: 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,建成的树应该是什么样的?-google 1point3acres
我说是这个样子的:
    a
   / \.鐣欏璁哄潧-涓浜-涓夊垎鍦
  b  e
/ \
c   d
小哥说,恩。你给我写个method就把这样一个string转成一棵树?. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴

写完之后,问我还有什么问题?
-------------------------- 我是分割线-------------------------------------. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
这道题用recursion写起来比较好写。关键的一步是:在检测到问号(if charAt(i) == '?')之后,新建完成这个左孩子节点,马上检测是否是冒号,然后去建右节点(在if charAt(i) == '?'里面写)()。
恩,就这样,大家加油。

. more info on 1point3acres.com
. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴

. From 1point 3acres bbs
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷




.鏈枃鍘熷垱鑷1point3acres璁哄潧




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

使用道具 举报

ryuichist 发表于 2015-5-11 17:15:49 | 显示全部楼层
关注一亩三分地微博:
Warald
notturno 发表于 2015-5-8 21:01
这是一面吗?
虽然还是面经的题,但已经不是烂大街的那两道了,有种要开始换题的感觉

这个也是电面的题目,只是出现的频率不是很高
回复 支持 反对

使用道具 举报

jaly50 发表于 2015-8-24 03:23:50 | 显示全部楼层
晒一下我这题的代码, 有路过的帮我看看对不对...感谢~
  1.          static class TreeNode {. 1point3acres.com/bbs
  2.              int val;
  3.               TreeNode left;. 1point3acres.com/bbs
  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;
  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) {
  15.                         if (chs[i]=='?') {
  16.                                 stack.push(cur);.鐣欏璁哄潧-涓浜-涓夊垎鍦
  17.                                 TreeNode node = new TreeNode(chs[i+1]); 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  18.                                 cur.left = node;
    . more info on 1point3acres.com
  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; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  25.                                 cur = node;
  26.                                
  27.                         }
  28.                 }
  29.                 return root;. from: 1point3acres.com/bbs
  30.         }
复制代码
回复 支持 反对

使用道具 举报

cu0817 发表于 2015-10-15 01:00:44 | 显示全部楼层
jaly50 发表于 2015-8-24 03:23. more info on 1point3acres.com
晒一下我这题的代码, 有路过的帮我看看对不对...感谢~

为啥要转 chararray?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-7-24 15:08

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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