📜  微软面试经历 |设置 71(校外)

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

微软面试经历 |设置 71(校外)

笔试:
他们在 HackerRank 中进行了笔试,时长为一个小时。他们要求我实现以下两个问题的功能。
1) 数组的最大乘积和。
https://www.geeksforgeeks.org/maximum-product-subarray/

2) 架桥问题。
https://www.geeksforgeeks.org/dynamic-programming-set-14-variations-of-lis/

技术面试一:
他非常友好,在解决问题时给我提示。
1)首先他问我关于我当前项目的概述,然后是项目中面临的最具挑战性的事情。在我回复之后,他问我你从那件具有挑战性的事情中学到了什么。

2)给定一个大小为 n 的整数数组,它在随机位置包含零,我们需要在一次扫描中将所有零移动到数组的末尾,而不需要额外的空间。
https://www.geeksforgeeks.org/move-zeroes-end-array/

3) 两个链表的合并点。
https://www.geeksforgeeks.org/merge-two-sorted-linked-lists/

4)与编程语言相关的问题
a) 关于继承
b) 关于类和接口
c) 抽象类和虚函数,……

5)他给出了一个情况,并要求我设计所需的类和函数,这些类和函数对编程这种情况很有用。

6)最后一个问题给出了一个数字,我们需要在 2^n 中找到下一个最接近的数字。
输入:127 输出:128
输入:129 输出:256


技术面试2:

他问了我非常简单的问题,但他想涵盖每一个角落。
1) 反向链表中的元素组
https://www.geeksforgeeks.org/reverse-a-list-in-groups-of-given-size/
2)在O(1)时间内执行堆栈的push,pop和min操作。
https://www.geeksforgeeks.org/design-and-implement-special-stack-data-structure/

一些建议:
1)纸上练习,不要在电脑上练习。
2)练习时,我们应该尝试自己做题然后看答案,不要直接去找答案。

微软的所有练习题!