2018年微软面试经历
第一轮:在线测试
有3个问题:OT
- 删除链表中 n 个节点后的 m 个节点
- 如果 1990 年 1 月 1 日是星期一,则查找日期中的日期
- 编写一个程序,如果是 75,则为 80,如果是 74,则为 70
第 2 轮:团体飞行
有两个问题:
- 中缀到后缀
- 在二叉树中连接同一级别的节点
面试轮次:
第三轮:
- 硬币找零(dp的面额问题)
- 反转链表中的 k 个节点
Input : list = 1 2 3 4 5 6 7 8 ,k = 3 output = 3 2 1 6 5 4 8 7
第四轮:
- 给定一个排序数组,其中所有元素都出现两次,但一个元素在 logn 复杂度中找到该元素
- 假设给你一个数组 1 2 4 6 现在输出应该是 48 24 12 8
这你必须不使用除法运算
第五轮:
在这一轮中,给出了一个简单的问题,假设你得到了一些可能相互依赖的文件,所以你必须告诉所有可能的路线,并告诉你哪些进程可以同时运行。他问我你将做什么以及你如何将使其prgm。