📜  微软面试经历 |设置 175(校内)

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

微软面试经历 |设置 175(校内)

所以这是校园招聘,微软第一次访问我们的校园(IIIT-Delhi)并提供了相当可观的薪水。他们将 CGPA 设置为 7,只有合格的学生才被要求出现在即将到来的轮次中。共有 175 名学生通过了 CGPA 的录取。

第一轮:这一轮是在 CoCubes 平台上进行的,我想说平台一点都不友好。我们在 75 分钟内解决了 3 个问题。不是所有的问题都是一样的,不同的学生有不同的问题。我们只需要完成所有问题的功能。您可以在 C、C++、 Java和 C# 之间选择您的语言,不允许使用Python 。

问题 1(2 分):给你 2 个整数 m 和 n。如果 (m+n) 中的位数与 n 中的位数相同,则返回 (m+n) 否则返回 n。
问题 2(3 分):给你一个仅包含 (+, -, *, /)运算符的算术表达式。 (*, /) 的精度大于 (+, -) 的精度。您必须评估表达式,如果出现 2 个连续的相同优先级运算符,则从左到右评估它们。

E.x. - 2 + 5 * 2 / 10
2 + 10 / 10
2 + 1
3

问题 3(5 分):给你一个链表的头节点,int n 和 int m。遍历链表,保留 M 个节点,然后删除下一个 N 个节点,继续相同直到链表的末尾,而不使用任何额外的空间。 gfg已经有了解决办法
https://www.geeksforgeeks.org/delete-n-nodes-after-m-nodes-of-a-linked-list/
第一轮结束后,大约 55 名学生被召集到下一轮。

第二轮:这一轮是纸笔编码轮。给出了 2 个问题,我们不得不在不使用任何库的情况下用笔和纸编写自己的代码。您必须从头开始编写所有内容。
问题 1:在字节数系统中,Z、A、B、C、D、E、F、G、H、I 的工作方式如下:它们是按升序排列的。单个 Z 没有价值(认为它为 0)。现在你得到了一个数字,你必须返回你可以用这些数字创建的最小数字,而不用前导 Z。
输入不会包含前导 Z。还要提到一些测试用例。
问题 2:你有一个包含一组单词的字典,你必须创建一个数据结构,它不会给你长度为 L 且第 i 个字符是 C 的单词。查询非常频繁,尝试优化它。所以基本完成以下函数:
Int countWords(int L, int i, char C)

我在问题 2 中犯了一些愚蠢的错误,所以我不确定我是否会接到电话。但他们可能打电话给所有成功解决了第一个问题(无错误代码)并尝试了第二个问题的学生。在第 2 轮之后,大约 23 名学生入围,并被要求参加个人面试。现在在PI任何事情都有可能发生,有些学生在第一轮后就拿到了offer,有些是在第二轮后拿到的,有些是在第三轮后拿到的。所以我一共打了3轮,都是技术性的。

第三轮:这一轮相当不错。我被要求解决这个问题
https://www.geeksforgeeks.org/count-possible-decodings-given-digit-sequence/
在这种情况下,他要求我也打印所有序列。他让我写下完整的颂歌(比如正确的代码,包括主要功能和所有)。然后他采用了我的解决方案并针对一个示例进行了测试,在笔纸上进行了试运行并检查是否打印了所有组合。 https://www.geeksforgeeks.org/maximum-size-rectangle-binary-sub-matrix- 1s/
我被要求解决这个问题,但我必须打印正方形的最大尺寸。我能够解决这两个问题,他似乎很高兴,然后他问我做过哪些项目,现在正在做哪些项目。


第 4 轮:
在 5 分钟内,我被要求进行下一轮面试,这可能是最艰难的
全部。
我被要求对问题进行编码:给定一个包含所有数字的字符串S,我必须在不使用递归的情况下解决这个问题。
S = solve(S),求解函数基本上是所有数字的总和。继续这个操作你会离开
一个数字。

E.x . - 2345
14 (2 + 3 + 4 +5)
5 (1 + 4)

我写了一个解决方案,例如:

While(S.size() != 1)
{
   S = solve(S);
}

求解函数正在求和,但他对此并不满意。然后我说我会维护一个频率阵列并对所有内容进行求和,但仍然对我的解决方案不满意。他说有更简单的解决方案。

什么是朋友函数?举一个朋友函数的例子。
什么是易挥发的?
什么是运算符重载。写new operator-overloading的代码-
https://www.geeksforgeeks.org/overloading-new-delete-operator-c/

为 itoa 编写自己的函数。然后是关于该问题的变量初始化和内存分配的一些基本问题。我对这一轮不满意,我不太确定我是否会被要求进行更多轮次。

第5轮:在上一轮他让我做whatsapp聊天设计。您将使用哪种数据结构,为此编写伪代码。如果您将使用 DBMS,请编写所有模式。我们对此进行了非常详细的讨论。最后在上一轮之后,他们让我们等待,而他们继续进行实习面试,我们期待着也许我们会有另一轮 HR。但就是这样,我的一个朋友(安置委员会成员)去找他们确认状态,当他回来时,我得到了好消息。后来HR打电话给我们送了一些好东西,最后恭喜了。这真的是我生命中最伟大的时刻之一。