📜  微软面试经历| 119套(实习用)

📅  最后修改于: 2021-11-15 08:23:53             🧑  作者: Mango

作为实习生招聘计划的一部分,微软每年都会访问我们的校园。该程序包括三个主要步骤 –

  • 在线编码回合
  • 书面编码回合
  • 采访

现在,按顺序向上爬梯子——
注意:我写的问题只是为了让你在这次采访中真正想象自己。如果有需求,我将讨论答案。

  • 1编码轮

    这是一个在线编码回合,有 3 个问题,托管在 cocubes.com 上。事实上,每个人都得到了不同的三道题,更好的运行时间和空间复杂度获得了更高的分数。
    对我来说,这三个问题是——
    • 给定 n 和 m,找出最接近 n 且能被 m 整除的数。如果存在距离相同的两个数字,则输出较大的一个。
    • 给定一个整数 n,如果这个数的二进制表示是回文,则求 1 的个数。您需要在不使用任何数据结构的情况下完成任务。
    • 给定一棵二叉树,在常数空间中找到从根节点到具有给定总和的叶节点的最小路径的长度。

    很多学生都从这一轮中入围,因为在这里完成所有三个问题都不太难。

  • 第二轮编码
    这是一个有 2 个问题的离线书面编码回合。一定要写干净和正确的代码,为变量和适当的缩进使用适当的名称。
    问题是——
    • 给定一个字符串“Being in an IIT values a lot”,将其转换为“lot aworths IIT an in Being”。不要使用字符串库函数。
    • 给定一个整数数组,找到具有最大乘积的子数组。

    本轮有35名学生入围。准备好迎接惊喜的警报 – 选择程序不够透明,无法让您有信心进入下一轮。我的意思是说,入围的人中有很多人做错了,还有很多人做得很好,但没有被授予参赛资格。

  • 采访
    我经历了三轮不同人的面试,每轮大约有 2 个问题。第三轮也讨论了我的项目。标准的——
    • 在二叉树中加入同一级别的所有节点。以恒定的额外空间迭代地执行此操作。
    • 在有向图中查找 u 和 v 是否相连,如果是,则打印路径。

    比上面那些有点有趣-

    • 在不使用任何额外空间的情况下,在 O( 字符串 的长度) 中完成书面编码回合的第一个问题。
      它很有趣,只是因为它是不同的东西。
    • 您将如何实现 LRU 缓存?

    除了这些,他们还考虑了CGPA最终入围。

    微软的所有练习题!