📜  微软面试体验集128 | (校内实习)

📅  最后修改于: 2021-09-17 07:44:52             🧑  作者: Mango

编码测试
平台:CoCubes 格式:3 道编码问题时间:75 分钟
他们有一个问题池,随机给每个学生三个问题(2 + 3 + 5 分)。

  1. 给定一个大小为 m 的数组 A 和另一个大小为 n 的数组 B。返回 A 的最大值和 B 的最小值的乘积。(2 分)
  2. 给定一个整数 N 和一个整数 M,输出一个最接近 N 且能被 M 整除的数。(2 分)
    Input: N = 15, M = 7  =>  Output: 14
    Input : N = 17, M = 3  => Output : 18
  3. 给定一个包含 或 ‘|’ 的字符串, 和 ‘&’ 和 xor ‘^’ 在二进制位 1 或 0 之间。返回输出。评估是从左到右。
    Eg. 1^1|1&0^1, answer is 1.

    (3 分)

  4. 给你两个逐渐排序的链表。返回包含按降序排序的两个链表元素的链表的头指针。只使用恒定的额外空间
  5. 给定一个二叉树。找到最深的左叶节点(其父节点的左子节点的最深叶节点)。如果有两个这样的节点,则返回其中的最大值。 (5 分) https://www.geeksforgeeks.org/deepest-left-leaf-node-in-a-binary-tree/
  6. 最长递增子序列。 (5 分) https://www.geeksforgeeks.org/longest-increasing-subsequence/

群飞
飞行回合大约需要 60 分钟

  1. 给定一棵 N 叉树。向树中的每个节点添加一个新成员next 指针。连接同一级别的节点。下面给出了二进制示例,但我们被要求解决 N。 https://www.geeksforgeeks.org/connect-nodes-at-same-level/
  2. 给定电话目录中存在的联系人列表。任务是实现电话目录的搜索查询。 https://www.geeksforgeeks.org/implement-a-phone-directory/
  3. 为文件传输编写测试用例?
    我们必须在纸上写下答案和代码。第一个问题是测试我们的编码技能,第二个问题是数据结构设计,第三个问题是调试。

面试
我有 3 次面试,每一次都要求我在纸上写代码。

第一

  1. 一个BST的两个节点互换,修正BST。
  2. 仅给定指向要在单向链表中删除的节点的指针/引用,如何删除它?
  3. 关于你的简历的问题。我使用 OOP 概念做过一个项目,所以他问了我这个问题。
  4. LRU 缓存。

第二个

  1. 矩阵链乘法 https://www.geeksforgeeks.org/dynamic-programming-set-8-matrix-chain-multiplication/
  2. 在矩阵链乘法问题中打印括号 https://www.geeksforgeeks.org/printing-brackets-matrix-chain-multiplication-problem/


第三个

  1. 在双向链表中提取二叉树的叶子。
  2. 删除链表中的备用节点。

相关实践问题

矩阵链乘法中的括号 OldP
电话簿 OldP
电话簿
矩阵链乘法中的括号
矩阵链乘法