當了一年的 Facebook Rotational Software Engineer 心得分享

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
E轮2.5亿美元融资
K12教育独角兽一起作业
北京-诚聘人工智能/教育/大数据岗
坐标湾区
Games Startup
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
码农求职神器Triplebyte:
不用海投
内推多家公司面试
把贵司招聘信息放这里
查看: 2778|回复: 8
收起左侧

问两道google的面试题

[复制链接] |试试Instant~ |关注本帖
一回头的温柔 发表于 2016-1-29 11:10:56 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类General 硕士 全职@Google - Other - Onsite  | Other | fresh grad应届毕业生

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

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

x

问大家两道google的面经题,有思路的请解答一下,看来原帖中的讨论,依然不太懂。
1.就是一个interface,里面有increment, lastMinute,lastHour,lastDay这几个method。. 一亩-三分-地,独家发布
目标是call last那几个函数的时候回返回前一分钟,一小时,一天内的request的数量。
具体的做法就是楼上大牛说的circular buffer,开一个86400的buffer然后转着圈儿update就好了。
. From 1point 3acres bbs
2.第一轮:亚裔(听名字不像中国人?)   一堆人参加比赛,最开始谁和谁先比是确定的,比赛是两两配对,一轮一轮进行,print出若有round和可能的组合。比如 有 ABCD四个人比赛, 那结果是:
1  A - B.本文原创自1point3acres论坛
1  C - D.鏈?枃鍘熷垱鑷�1point3acres璁哄潧
2  A - C
2  A - D
2  B - C
2  B - D
但是要考虑一个情况,就是有五个人比赛,比如 ABCDE五个人, 那么E这个人可能是在C和D比完后和他俩的胜者比,或者E 和 AB的胜者比。或者E 和 ABCD的胜者比。. 围观我们@1point 3 acres
问题:1.用什么数据结构存比赛者。 就说二叉树就行了,把比赛者存在叶子节点,怎么构成不需要你考虑。
          2. print出结果(应该就是postorder traversal了)


本帖被以下淘专辑推荐:

aifer 发表于 2016-1-29 11:25:36 | 显示全部楼层
你的问题是什么?
回复 支持 反对

使用道具 举报

johnjavabean 发表于 2016-1-29 14:20:54 | 显示全部楼层
第二题没太懂,是循环积分赛还是淘汰赛?
回复 支持 反对

使用道具 举报

 楼主| 一回头的温柔 发表于 2016-1-29 14:27:43 | 显示全部楼层
aifer 发表于 2016-1-29 11:25
你的问题是什么?

能不能分别讲讲两题的思路?
回复 支持 反对

使用道具 举报

 楼主| 一回头的温柔 发表于 2016-1-29 14:28:25 | 显示全部楼层
johnjavabean 发表于 2016-1-29 14:20
第二题没太懂,是循环积分赛还是淘汰赛?

同不太懂,我是在别的面经上贴过来的,第一题的思路能说说看吗
回复 支持 反对

使用道具 举报

aifer 发表于 2016-1-29 23:21:31 | 显示全部楼层
aifer 发表于 2016-1-29 11:25
你的问题是什么?

第一题我看的不是很明白我就不说了。说说第二题。我的理解是,这个对阵的树形结构是Input。树的所有叶子就是所有参赛队伍。用dfs的方式分别访问左右子树,并将参赛队伍的list自底向上逐层向上归并。同时在每一层打印该层左右子树返回的list的所有组合。大概代码是这样:
List dfs(TreeNode root) {. 1point 3acres 论坛
    if (root == null) return null list;
    List left = dfs(root.left);
    List right = dfs(root.right);. from: 1point3acres
. visit 1point3acres for more.
    if (left.isEmpty() && right.isEmpty() { // a leaf node
        List res = new List();
        res.add(root.val);
        return res;
    }
    else if(left.isEmpty() || right.isEmpty()) // 某个队伍对阵为空
        return left.isEmpty()? right : left;-google 1point3acres
    else { . 1point 3acres 论坛
        // print permutation of elements in left and right list.
        for ( element  e in left)
             for (element el in right).1point3acres网
                 print(e - el);

        left.addAll(right); // return all teams from left and right subtree to up level
        return left;
    }



回复 支持 反对

使用道具 举报

LYJALEX__ 发表于 2016-1-30 17:51:51 | 显示全部楼层
哈哈换头像啦楼主
回复 支持 反对

使用道具 举报

johnjavabean 发表于 2016-2-1 17:57:55 | 显示全部楼层
aifer 发表于 2016-1-29 23:21
第一题我看的不是很明白我就不说了。说说第二题。我的理解是,这个对阵的树形结构是Input。树的所有叶子 ...

看上去好像是对的...但写的有点奇怪...
Mobile Apps Category (English)728x90
回复 支持 反对

使用道具 举报

aifer 发表于 2016-2-2 01:19:22 | 显示全部楼层
johnjavabean 发表于 2016-2-1 17:57
看上去好像是对的...但写的有点奇怪...

伪代码+真代码的结合体。。
回复 支持 反对

使用道具 举报

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

关闭

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

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

custom counter

GMT+8, 2018-5-21 03:28

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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