第1轮:
第一轮包括两个需要在 1 小时内解决的编码问题 –
- 给定一棵二叉树,逆时针打印树的边界。参考:http://www.geeksforgeeks.org/boundary-traversal-of-binary-tree/
- 给定一个二维数组,每个数组由值 0 或 1 组成,0 表示海洋,1 表示陆地。求最大岛的周长。
选择标准是至少完成一个完整的运行代码,并带有示例案例。这是笔和纸轮,如果需要任何帮助,导师就在身边。这是一个相当简单的回合。本轮过后,共有13名候选人入围。
第二轮:
- 采访以关于大学和所教授科目的小谈话开始。然后面试官问我是否可以用图表编码一个问题,我说可以。所以他让我编写以下问题的代码——
- 给定一个有向图和一个起始节点,找出是否可以到达图中的所有其他节点。在我写完代码之后,他让我把它扩展到所有节点,也就是说,如果所有节点都相互连接,代码应该输出 YES,否则回答 NO。
当我在纸上写代码时,面试官正在扫描我简历上的每一个字,并在中间问我问题。他检查了我所有的在线编程句柄,如 codechef、hackerrank 等。
建议:不要在你的简历上撒谎,我的经过彻底验证。
- 然后他给了我下一个与树木有关的问题。这是一个基于情境的问题,在解码时等同于这个问题——给定一个 BST,从树中删除最小的元素。
- 下一个问题比较简单。给定一组对(高度,硬币),我被要求找到特定高度的硬币总和。