一亩三分地论坛

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

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

2月5日Facebook Intern一面跪经

[复制链接] |试试Instant~ |关注本帖
k024zz 发表于 2016-2-6 10:42:12 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类 硕士 实习@Facebook - 内推 - 技术电面 |Failfresh grad应届毕业生

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

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

x
面试官是中国小哥,上来就挑了一个项目问,然后开始做题。
题目是three sum原题,之前做这题我是先排序,然后用一个for转换成two sum,然后用two pointer解,小哥说有没有其他方法,我就写了一个用for转成two sum,然后再用map解的方法,但是在每一次for循环里面都要重新建一个map来统计数字出现的次数。小哥继续让我优化,把建map的操作放在for外面,然后就遇到数字重复无法处理的情况(两两重复,三个重复)。我之前有用two pointer和unordered_map两种方法解过two sum,但是没想到three sum用map会有这个bug,当时一下子就慌了,大脑一片空白,到最后还没完全解决……之后问我为什么不用hashmap,然后让我讲hashmap和map的区别。

最后让我问问题,就没有然后了。小哥很nice,出的题也简单,只能怪自己不争气,没有用最优解解出来。 鏉ユ簮涓浜.涓夊垎鍦拌鍧.

失败总结:
我leetcode现在刷了190题,最后跪在three sum上,真的不好意思说出来……等二刷的时候每道题都一定要用最优方法解一遍,提高熟练度。
继续努力刷题,为今年full time求职做准备。

评分

3

查看全部评分

本帖被以下淘专辑推荐:

theocrasy 发表于 2016-2-6 11:07:23 | 显示全部楼层
听说fb一年冷冻期是和intern混用的,所以现在intern跪 = 来年full time要等年后 = full time基本没戏了 是这个意思么?
回复 支持 反对

使用道具 举报

xiaozhuxiaozhu 发表于 2016-2-6 11:19:22 | 显示全部楼层
three sum为什么要用map.
求lz,指点一下。
回复 支持 反对

使用道具 举报

iammajian 发表于 2016-2-6 11:48:24 | 显示全部楼层
theocrasy 发表于 2016-2-6 11:07
听说fb一年冷冻期是和intern混用的,所以现在intern跪 = 来年full time要等年后 = full time基本没戏了 是 ...

感觉facebook full time冷冻期有没有都无所谓,反正他家基本不招full time
回复 支持 反对

使用道具 举报

luofeidream 发表于 2016-2-6 11:53:21 | 显示全部楼层
iammajian 发表于 2016-2-6 11:48
感觉facebook full time冷冻期有没有都无所谓,反正他家基本不招full time
. From 1point 3acres bbs
其实是招的啊。。我有一学长就是今年full time招进去的
回复 支持 反对

使用道具 举报

 楼主| k024zz 发表于 2016-2-6 13:55:04 | 显示全部楼层
xiaozhuxiaozhu 发表于 2016-2-6 11:19
three sum为什么要用map.. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
求lz,指点一下。

就是用map来统计每个数出现的次数
回复 支持 反对

使用道具 举报

DreamBoy 发表于 2016-2-6 14:11:49 | 显示全部楼层
lz fb什么时候投的呀?
回复 支持 反对

使用道具 举报

浅浅 发表于 2016-2-6 14:54:53 | 显示全部楼层
感觉这么问吹毛求疵优化之类的好无聊呀……竟然还是中国人
回复 支持 反对

使用道具 举报

lyburke 发表于 2016-2-6 16:58:58 | 显示全部楼层
除了暴力解法,3Sum用two pointers解复杂度O(n^2)难道不是最优解吗= =感觉最多每次循环和指针移动时跳过重复元素,难道还有更好的解法
回复 支持 反对

使用道具 举报

农大晏如君 发表于 2016-2-6 21:26:23 | 显示全部楼层
楼主,并没有跪,一般先做出来在和面试官一起优化,优化的过程中出了点问题没事的。   况且3sum我觉得最简就是转化为2sum吧,不用怕,offer在路上
回复 支持 反对

使用道具 举报

Lolipop 发表于 2016-2-6 22:36:22 | 显示全部楼层
同问啊,楼主,现在intern跪了怎么申今年的fulltime。。。。f家不是冷冻一年吗
回复 支持 反对

使用道具 举报

 楼主| k024zz 发表于 2016-2-6 22:51:13 | 显示全部楼层
Lolipop 发表于 2016-2-6 22:36
同问啊,楼主,现在intern跪了怎么申今年的fulltime。。。。f家不是冷冻一年吗

我指的是其他公司
回复 支持 反对

使用道具 举报

dwiller 发表于 2016-2-7 04:03:56 | 显示全部楼层
这个应该是跪不了的
回复 支持 反对

使用道具 举报

singku 发表于 2016-2-7 04:16:22 | 显示全部楼层
刷题刷得多并没有什么用处,关键在于做题过程中对题目本身的思考程度。刷得多,只能保证你遇到类似的题目可以很快做出,遇到新题目又怎么办?
回复 支持 反对

使用道具 举报

木易wen 发表于 2016-2-16 00:52:03 | 显示全部楼层
hashmap和map的区别是什么鬼。。
java的话map是接口,用hashmap和treemap实现
回复 支持 反对

使用道具 举报

dwiller 发表于 2016-2-16 01:40:47 | 显示全部楼层
楼主拿到二面了吗?
回复 支持 反对

使用道具 举报

农大晏如君 发表于 2016-2-16 03:20:09 | 显示全部楼层
dwiller 发表于 2016-2-16 01:40. from: 1point3acres.com/bbs
楼主拿到二面了吗?

已跪,Amazon实习就一个OA,一个电话面试。
回复 支持 反对

使用道具 举报

农大晏如君 发表于 2016-2-16 03:21:13 | 显示全部楼层
农大晏如君 发表于 2016-2-16 03:20-google 1point3acres
已跪,Amazon实习就一个OA,一个电话面试。

脑残了,见谅
回复 支持 反对

使用道具 举报

woshixuyoudan 发表于 2016-2-18 13:54:07 | 显示全部楼层
follow up 写了一下代码  不知道对不对 可以指教一下

public List<List<Integer>> threeSum(int[] nums, int target) {. 鍥磋鎴戜滑@1point 3 acres
        Arrays.sort(nums);
        Map<Integer, Integer> map = new HashMap<>();
        List<List<Integer>> ret = new ArrayList<>();
        for (int i = 0; i < nums.length; i++) {. visit 1point3acres.com for more.
            map.put(nums[i], map.containsKey(nums[i]) ? map.get(nums[i]) + 1 : 1);
        }. more info on 1point3acres.com
        for (int i = 0; i < nums.length; i++) {
            for (int j = i + 1; j < nums.length; j++) {
                int rest = target - nums[i] - nums[j];
                int count = 0;
                if (nums[i] == rest) {count++;}
                if (nums[j] == rest) {count++;}
                if (map.containsKey(rest) && map.get(rest) > count && rest >= nums[j]) {
                    ret.add(Arrays.asList(nums[i], nums[j], rest));
                }
                while (j < nums.length - 1 && nums[j] == nums[j + 1]) {j++;}
            }
            while (i < nums.length - 1 && nums[i] == nums[i + 1]) {i++;}
        }
        return ret;-google 1point3acres
    }
回复 支持 反对

使用道具 举报

returning 发表于 2016-2-21 16:21:27 | 显示全部楼层
没看明白面试官想让你做什么,他是不是想让你维护一个hashtable,其中key是两个数的和,value是对应的两个数?如果两组数有相同和那么value就是一个list,然后依次去查询hashtable看是否满足条件?但是不管怎样也没法比O(N^2)更优啊
回复 支持 反对

使用道具 举报

本版积分规则

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

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

关闭

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

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

custom counter

GMT+8, 2016-12-9 15:55

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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