📌  相关文章
📜  微软面试经历 |第 55 套(适用于软件工程师 2)

📅  最后修改于: 2022-05-13 01:57:06.914000             🧑  作者: Mango

微软面试经历 |第 55 套(适用于软件工程师 2)

Skype 第 1 轮:(10 分钟)
以之字形顺序打印一棵树。例如给定的输入树:-

1
            2        3
        4        5 6        7 

输出将是: -

1
3 2
4 5 6 7 

以您熟悉的任何语言编写逻辑代码。


Skype 第 2 轮:(10 分钟)
查找两个给定的字符串是否是彼此的字谜。
字谜示例:聆听和沉默。
相同的代码。代码的测试用例。 (正面及负面)

他们在 Skpe 回合后立即叫我去海得拉巴参加 F2F,(我设法将其推迟到下周)。


Face2Face 第 1 轮:(45 分钟)

问题一:
给定一个字符数组,其中每个位置都填充有单个数字或逗号,
22 个字符的数组:-
图片
如果我们找到一组由逗号分隔的三组数字,则编写一个代码以回复 true,使得
X、Y、Z 和 Z = X + Y
在 77+22 = 99 上面的数组中,因此返回 true.Code 与否定测试用例相同。

问题2:
如果在给定的双循环链表中,有几个 next 指针损坏,请给出纠正它们的逻辑。


Face2Face 第 2 轮:(1 小时)

给定 int 变量中的数字,编写代码以文字形式打印其值,涵盖所有可能的极端情况。
Ex → 34567 = 三万四千五百六十七。
相同的负面测试用例。


Face2Face 第三轮:(1 小时 15 分钟)

问题一:
给定一个调度程序安排,其中一些作业具有唯一的作业 ID,并且每个作业 ID 都有许多具有该作业的唯一任务 ID 的任务。
例子:-

Job id : 500    Task id : 700
      Task id : 300
      Task id : 350
 Job id : 600    Task id : 400
      Task id : 350
      Task id : 600
 Job id : 1000    Task id : 800
      Task id : 100
 Job id : 200    Task id : 650

编写代码以循环方式列出作业 ID + 任务 ID 组合。
例子:-

Job id : 500    Task id : 700
Job id : 600    Task id : 400
Job id : 1000    Task id : 800
Job id : 200    Task id : 650
Job id : 500    Task id : 300
Job id : 600    Task id : 350
Job id : 1000    Task id : 100
Job id : 500    Task id : 350
Job id : 600    Task id : 600

选择输入的任何数据结构(结构数组或链表或队列)。
设计相同的测试用例。

问题2:

给定一个 BST,从相同的位置创建一个双向链接列表。
树节点 -> 左指针 = DLL 节点 -> 前一个指针
树节点 -> 右指针 = DLL 节点 -> 下一个指针


Face2Face 第 4 轮:(与导演)(约 1 小时)
他问了一些典型的人力资源问题,比如
为什么选择微软?
10年后你自己在哪里?呸呸呸。

问题一:
给定一堆乱七八糟的球(红色蓝色和白色),编写一个算法+程序,以最有效的方式对它们进行颜色排序。 (荷兰国旗问题)

问题2:
给定一个字符串,打印该字符串并交替出现任何丢弃的字符。

Example:-  input string    → It is a long day Dear.
       Output string → tisalongdyDea. 

修改:- 将两种情况下的字母视为相同的出现。

Output string → Itsalongdy ea.

职位是软件工程师2。MSFT不再有SDE和SDET,从现在开始所有的角色都是SE。

感谢极客的极客。这个网站是求职者的奇迹。

相关练习题

字符串无知

微软的所有练习题!