第 1 轮:书面(1.5 小时)
这一轮由两个部分组成——每个部分有 10 个问题。
技术:C 程序的输出,这些程序涉及运算符优先级、位运算符、字符串、指针、结构、递归等。
一般:问题主要来自定量能力,包括火车、年龄、比例和比例、船和溪流、伙伴关系、速度和距离方面的问题。
第 2 轮:简短编码(3-4 小时)
本轮包括6个问题。
- 给定一个大小为 MXN 的布尔矩阵 mat[M][N],修改它,如果矩阵单元格 mat[i][j] 为 1,则将其相邻单元格设为 0。
- 用右侧最大的元素替换每个元素 https://www.geeksforgeeks.org/replace-every-element-with-the-greatest-on-right-side/
- 数组的均衡索引 https://www.geeksforgeeks.org/equilibrium-index-of-an-array/
- 洪水填充算法 https://www.geeksforgeeks.org/flood-fill-algorithm-implement-fill-paint/
- 以锯齿形方式打印矩阵 https://www.geeksforgeeks.org/print-matrix-zag-zag-fashion/
- 二叉树的直径 https://www.geeksforgeeks.org/diameter-of-a-binary-tree/
导师对代码的时间和空间复杂性非常关注。
第 3 轮:长编码(4 小时)
问题是开发一个具有以下功能的电子表格。首先被要求解释我们解决问题的方法,然后我们才被允许编码。
- 打印电子表格中的所有单元格
- 通过计算表达式在单元格中显示结果(没有计算的优先级和顺序)
- 通过计算表达式(使用优先级和计算顺序)在单元格中显示结果
- 检查给定表达式中是否有任何错误
- 检查给定单元格之间是否存在循环依赖
- 如果满足特定条件,则更改给定单元格范围内的内容
在这一轮中,您解决了多少并不重要,主要取决于您的解决方案的效率。
第 4 轮:
这是一次与 HR 的面对面面试,只针对少数候选人进行,其余的则根据他们上一轮的表现进行选择。在这一轮中,几乎没有问到技术性和一般性问题。