微软面试体验 2018 @ IIT
第一轮:cocubes平台在线编码测试。
我的问题是——
1. 我们得到一个数字,我们必须从同一组数字中找到下一个更大的数字。 https://www.geeksforgeeks.org/find-next-greater-number-set-digits/
2. 给定二叉树中的两个节点,求两个节点之间的距离。 https://www.geeksforgeeks.org/find-distance-between-two-nodes-of-a-binary-tree/
3. 找到给定日期的星期几。 https://www.geeksforgeeks.org/find-day-of-the-week-for-a-given-date/
约70名学生被选为团体飞轮
第 2 轮:团体飞行
它包括来自各种主题的客观选择题,如操作系统、CN、DBMS、计算机体系结构(基本上是门 CS 教学大纲)和一些链表编码问题,其中我们展示了链表的所有操作,如所有可能的添加、删除情况的节点。尽量涵盖所有极端情况,并用图表进行解释,让你的答案比其他人更突出。另外,如果您有任何疑问,请询问在场的监考人员(他们非常友好)。
约40名学生被选中参加面试。
第三轮:技术面试 1
请对面试充满信心,即使你不知道答案,也要努力寻找解决方案,不要放弃。他们基本上是在测试您的思维能力,因此请尽可能努力并付出 100% 的努力。
第一轮,他问的问题有点棘手。问题是-给定任何单词,找出我们可以从该单词的字母中组成多少单词。我试图给出一些方法,因为我不直接知道优化的方法,我说使用所有可能的组合并检查字典是否存在该单词,面试官似乎很相信但他问我是否可以做得更好,他给出了一些提示和然后我能够想出解决方案——我们必须根据字母对单词进行排序,在字典中我们也会对单词进行排序然后计数。
注意:相同字母的所有排序版本将给出相同的结果。
他被说服了,然后他问了一些关于CN、DBMS、OS的问题。虽然他没有问我的项目,但我向他解释了😛,因为那是我的强项,我想让他问这个问题(他什么都没问:P)
第 4 轮:技术面试 2
在第二轮中,他要求给定人的出生日期和死亡日期,找出人口最多的年份。
在这里,我们将使用一个数组,将出生年份设为 +1,死亡年份设为 -1,最后遍历数组并找到最大值(返回相应的年份)。
我花了大约 5 分钟才想出这个解决方案,所以他又问了我一个问题——
给定一个移动键盘,找出所有可能的字母组合,给定数字。 https://www.geeksforgeeks.org/find-possible-words-phone-digits/
我能够回答这个问题,当我一口气回答这个问题时,他非常确信(幸运的是,我在面试前 5 分钟读到了这个问题,他问了我同样的问题:D)
第五轮:人力资源轮
她什么都没问,我被暗示我被选中了(他们不能在会议结束前透露结果)。这对我来说是最快乐的时刻🙂
整个过程进展顺利。我所能建议的就是非常自信并付出100%的努力。如果你很了解你的项目,即使他们不要求,也尽量向他们解释,这样他们就可以知道你所做的一切(面试官不认识你,只有在这 15 分钟内,他才会了解你所以尽量给他更多选择你的理由)。
最后,我要感谢 Geeks 在此过程中对我的帮助。