📜  微软面试经历|第 129 组(校内实习)

📅  最后修改于: 2021-11-10 06:16:20             🧑  作者: Mango

笔试:

    三个简单的问题。
  1. 完成一个接受两个整数 x 和 y 的函数。如果 (x+y) 中的数字等于 x,则必须返回 x+y,否则返回 x。
  2. 完成一个接受二进制字符串的函数。您必须返回仅包含“1”的连续子字符串的最长大小。
  3. 完成一个函数,它取一棵树的根(实现为链表,每个节点都包含一个整数)和一个整数 N。你必须返回叶节点的最大深度,使得路径中节点元素的总和root 到叶子节点应该等于 N。

飞轮

    飞行回合大约需要 45 分钟。学生必须在纸上为 2 个问题编写代码。
  1. 编写一个接受句子的函数。您必须以相反的顺序返回包含单词的句子。
    输入:他不是编码员。
    输出:coder not is He。
  2. 最大乘积子阵列。
    按照我的想法,不要想着快速解决问题(如果你快点会更好。),你可以慢慢来,写一个漂亮的代码(任何人都可以清楚地理解,例如,如果你正在使用帮助数组,然后明智地选择名称,如 MinSum[]、SmallestInt[]、CurAns[])。

面试

第一轮:

    第一个面试官问了我一个问题,你知道 XML 编码吗?我说,不,先生,我从来没有听过这件事,我不认为这是理所当然的。然后他描述了一些关于它的事情。在听的同时
    描述,不要沉默,试着就你的疑问提出问题,其他角落的测试用例尽量聪明(不要问任何愚蠢的问题)。如果你觉得这个问题很简单 所以告诉你的方法而不是直接的解决方案。
    我不记得整个问题,但我记得输入输出,那就是,
    输入:5 > 4 或 7 4 或 7<9

第二轮:

  1. 编写在 N! 中查找零数字的代码。
  2. 问题是您有一个购买彩票的网站,同时人们从您的网站购买彩票。你必须以均匀的概率随机选择一个候选人。我也得写代码。幸运的是,我之前的回答给他留下了深刻的印象,所以他给了我很多提示,让我找到下一个问题的答案。最后,我找到了解决方案。他让我写代码,我写了一个代码,但他不同意,而且
    告诉我不正确,写其他,然后最后我写了正确的代码。两人都很高兴,也很满意。然后他问了我5-6个问题
    操作系统,
  3. 互斥量和信号量的区别,
  4. 进程和线程的区别
  5. chrome 进程或线程中的新选项卡是什么
  6. 多个进程同时共享同一个资源,你应该怎么做,幸运的是他对我的回答很满意,看起来印象深刻。

人力资源回合:

  1. 他问我关于我的项目,兴趣。那是非常轻松的面试。
微软的所有练习题!

相关实践问题

两个大数之和