📜  微软面试经历|第 159 集(校园内)

📅  最后修改于: 2021-11-17 10:01:22             🧑  作者: Mango

第1轮:

第一轮包括两个需要在 1 小时内解决的编码问题 –

  1. 给定一棵二叉树,逆时针打印树的边界。参考:http://www.geeksforgeeks.org/boundary-traversal-of-binary-tree/
  2. 给定一个二维数组,每个数组由值 0 或 1 组成,0 表示海洋,1 表示陆地。求最大岛的周长。

选择标准是至少完成一个完整的运行代码,并带有示例案例。这是笔和纸轮,如果需要任何帮助,导师就在身边。这是一个相当简单的回合。本轮过后,共有13名候选人入围。

第二轮:

    采访以关于大学和所教授科目的小谈话开始。然后面试官问我是否可以用图表编码一个问题,我说可以。所以他让我编写以下问题的代码——

  1. 给定一个有向图和一个起始节点,找出是否可以到达图中的所有其他节点。在我写完代码之后,他让我把它扩展到所有节点,也就是说,如果所有节点都相互连接,代码应该输出 YES,否则回答 NO。

    当我在纸上写代码时,面试官正在扫描我简历上的每一个字,并在中间问我问题。他检查了我所有的在线编程句柄,如 codechef、hackerrank 等。

    建议:不要在你的简历上撒谎,我的经过彻底验证。

  2. 然后他给了我下一个与树木有关的问题。这是一个基于情境的问题,在解码时等同于这个问题——给定一个 BST,从树中删除最小的元素。
  3. 下一个问题比较简单。给定一组对(高度,硬币),我被要求找到特定高度的硬币总和。