微软面经
1.自我介绍。
2.了解设计模式吗?
3.数据库熟悉吗?
4.LR的优化函数。
5.SVM和LR的区别。
6.一个乱序数组,找出和为0的最长子串。
7.输入法中,输入一个词(字)后,输入法会提醒后续可能的输入,你会用什么数据结构去设计。
8.非法输入检测,一个词表(包含所有的非法输入),检测句子是否包含词表里面的任意词语。
面试过程中,面试官非常的nice,非常有耐心,给时间让我不断思考优化。
二面:
1.自我介绍基本情况前面了解得差不多了,直接代码。
2.(手撕代码)单链表的快速排序3.(手撕代码)四种操作,一:输入字符A,二:CTRL+A(全选),三:CTRL+C(复制),四:CTRL+V(粘贴)。你有n次操作机会,求最长字符串。二面就手撕两个算法,因为过程中出现网络不太好,第二个算法只写了伪代码。
三面(Leader面):
1.自我介绍。
2.问了做过的论文。
3.(手撕代码)硬币游戏:两个玩家(甲,乙)玩游戏,有一个长度为n的乱序数组(数组每个元素代表一个硬币,数值代表硬币面值),甲乙轮流拿硬币(可以拿走最左边的一个或者两个硬币,拿走不放回),问先玩的玩家是否一定能赢。
4.聊了聊我过去蹉跎的岁月。
Q:1.自我介绍
2.了解设计模式吗?(不了解 T T)
3.数据库熟悉吗?
4.LR的优化函数
5.SVM和LR的区别
6.(手撕代码)一个乱序数组,找出和为0的最长子串。
7.输入法中,输入一个词(字)后,输入法会提醒后续可能的输入,你会用什么数据结构去设计。
8.非法输入检测,一个词表(包含所有的非法输入),检测句子是否包含词表里面的任意词语。
一面过程中,非算法题回答一般,算法(7) 思考了比较久(惭愧),一共提出了5个算法, O(N3) -> O(N3) -> O(N2) -> O(N2) -> O(N). 面试过程中,面试官非常的nice,非常有耐心,给时间让我不断思考优化~
二面
1.自我介绍
基本情况前面了解得差不多了,直接代码
2.(手撕代码)单链表的快速排序
3.(手撕代码)四种操作,
一:输入字符A,
二:CTRL+A(全选),
三:CTRL+C(复制),
四:CTRL+V(粘贴)。
你有n次操作机会,求最长字符串。
二面就手撕两个算法,因为过程中出现网络不太好,第二个算法只写了伪代码。
三面(Leader面)
1.自我介绍
2.问了做过的论文
3.(手撕代码)硬币游戏:两个玩家(甲,乙)玩游戏,有一个长度为n的乱序数组(数组每个元素代表一个硬币,数值代表硬币面值),甲乙轮流拿硬币(可以拿走最左边的一个或者两个硬币,拿走不放回),问先玩的玩家是否一定能赢。
4.聊了聊我过去蹉跎的岁月。