一亩三分地论坛

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

扫码关注一亩三分地公众号
查看: 2983|回复: 20
收起左侧

Facebook2月25日第一轮电面

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

2016(1-3月) 码农类 博士 全职@Facebook - 内推 - 技术电面 |Otherfresh grad应届毕业生

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

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

x
第一题: flatten nested list (e.g. [1,2,[3,4[5]]]). from: 1point3acres.com/bbs
第二题: binary tree level order traversal
第三题: 给三个funtions: is_low(), is_mid(), is_high(). 让给一个数组排序, low的放在最前面, mid的放在中间, high的放在最后面.

评分

1

查看全部评分

本帖被以下淘专辑推荐:

stephaniede 发表于 2016-8-24 13:14:47 | 显示全部楼层
搜到了答案,贴上来造福群众

public class FlattenNestedArray {
        public static List<Integer> flatten(List<?> list) {
        List<Integer> ret = new LinkedList<Integer>();
        flattenHelper(list, ret);
        return ret;
    }

    public static void flattenHelper(List<?> nestedList, List<Integer> flatList) {
        for (Object item : nestedList) {
            if (item instanceof List<?>) {
                flattenHelper((List<?>) item, flatList);
            } else {
                flatList.add((Integer) item);
            }. Waral 鍗氬鏈夋洿澶氭枃绔,
        }
    }
. Waral 鍗氬鏈夋洿澶氭枃绔,
    public static void main(String[] args) {
        List<Object> nestedList = lst(1, lst(2, lst(3, 4)), lst(5, 6, 7), 8, lst(lst(9, 10)));
        List<Integer> flatList = flatten(nestedList);
        System.out.println(nestedList);. 鍥磋鎴戜滑@1point 3 acres
        System.out.println(flatList);
    }

    private static List<Object> lst(Object... objs) {
        return Arrays.asList(objs);
    }
}. 鍥磋鎴戜滑@1point 3 acres
回复 支持 1 反对 0

使用道具 举报

vivian88 发表于 2016-2-26 07:26:04 | 显示全部楼层
请问楼主可以给出第一题的思路么?
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-26 07:39:52 | 显示全部楼层
第1题什么意思?
回复 支持 反对

使用道具 举报

iwofr 发表于 2016-2-26 07:45:19 | 显示全部楼层
第一题就是把nested list变成正常的list呗,[1,2,[3,4[5]]]-》[1,2,3,4,5]用一个simple recursion divide and conquer就好了
回复 支持 反对

使用道具 举报

 楼主| nahgnaw 发表于 2016-2-26 09:55:31 | 显示全部楼层
iwofr 发表于 2016-2-26 07:45
第一题就是把nested list变成正常的list呗,[1,2,[3,4[5]]]-》[1,2,3,4,5]用一个simple recursion d ...
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
楼上正解
回复 支持 反对

使用道具 举报

beer 发表于 2016-2-28 00:38:31 | 显示全部楼层
楼主45分钟做了三题嘛?好快
回复 支持 反对

使用道具 举报

woshixuyoudan 发表于 2016-2-29 12:58:49 | 显示全部楼层
想问一下第一题如果是这样.鐣欏璁哄潧-涓浜-涓夊垎鍦
[1,2,[3[6,7,8],4[5]]]
输出是 1, 2, 3, 6, 7, 8, 4, 5吗
还是1, 2, 3, 4, 6, 7, 8, 5
回复 支持 反对

使用道具 举报

 楼主| nahgnaw 发表于 2016-3-1 10:50:23 | 显示全部楼层
woshixuyoudan 发表于 2016-2-29 12:58.1point3acres缃
想问一下第一题如果是这样.鏈枃鍘熷垱鑷1point3acres璁哄潧
[1,2,[3[6,7,8],4[5]]]
输出是 1, 2, 3, 6, 7, 8, 4, 5吗

前者 按原来顺序输出即可
回复 支持 反对

使用道具 举报

woshixuyoudan 发表于 2016-3-1 11:56:35 | 显示全部楼层
nahgnaw 发表于 2016-3-1 10:50
前者 按原来顺序输出即可

谢谢楼主!! 那dfs就可以了吧
回复 支持 反对

使用道具 举报

haling27188 发表于 2016-3-1 12:08:28 | 显示全部楼层
求问楼主什么时候收到结果?或者二面消息的啊?
回复 支持 反对

使用道具 举报

tldxk 发表于 2016-3-12 08:21:02 | 显示全部楼层
nested list这题,可以先toString() 转成String后,在直接抽出数字吗?把所有的括号、逗号忽略即可
回复 支持 反对

使用道具 举报

dondon91 发表于 2016-3-14 05:23:46 | 显示全部楼层
LZ~ 第一题给的输入是什么type? 咋感觉你给的例子,list<T> 里面T可以是int, 也是可以list<W>?
如果是给的是string: 那样的话,直接按顺序抽出来数字,然后忽略之间的([ ] ,)也可以吧。
回复 支持 反对

使用道具 举报

dondon91 发表于 2016-3-14 05:26:15 | 显示全部楼层
第三题是leetcode原题: sort colors:https://leetcode.com/problems/sort-colors/
思路有两个: count sort, two pointer
回复 支持 反对

使用道具 举报

wangmengcathy 发表于 2016-3-19 10:04:49 | 显示全部楼层
楼主是不是不用java啊,第一题我感觉放在java里面题干本身就不太对啊 Java一个list里怎么能有两种类型。。。还是说面试官只要一个思想不要actual code
回复 支持 反对

使用道具 举报

elvisxyu 发表于 2016-3-19 10:55:43 | 显示全部楼层
第一题考点是啥没完全理解
直接扫一遍只取数字不行么?怎么还用到divide and concur了
回复 支持 反对

使用道具 举报

Alice0701 发表于 2016-4-21 04:19:28 | 显示全部楼层
leetcode 上面现在也有 flatten nested list 的题了,不知道是不是类似的
回复 支持 反对

使用道具 举报

smallpig1988 发表于 2016-5-1 09:25:10 | 显示全部楼层
应该iteration也行. more info on 1point3acres.com
def flatten(nest_list):
  stack = [[nest_list, 0]]
  res = []
  while stack:. Waral 鍗氬鏈夋洿澶氭枃绔,
    cur_list, ind = stack[-1]
    if ind == len(cur_list):
        stack.pop()
    else:
        e = cur_list[ind]
        if isinstance(e, list):
          stack.append([e,0])
        else:
. 1point3acres.com/bbs          res.append(e)
          ind += 1
  return res. visit 1point3acres.com for more.
回复 支持 反对

使用道具 举报

dimi 发表于 2016-8-22 13:27:10 | 显示全部楼层
45m 3题目真是神速。。。。。。。膜拜
回复 支持 反对

使用道具 举报

stephaniede 发表于 2016-8-24 07:03:25 | 显示全部楼层
Alice0701 发表于 2016-4-20 13:19
leetcode 上面现在也有 flatten nested list 的题了,不知道是不是类似的

不太一样。那个检测list每个选项的时候虚拟了一个interface,实际电面考到这题,interface得自己写。。
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-11 15:02

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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