微软stca software engineer 暑期实习
一面:
面试官:微软广告组小哥哥
简单的自我介绍+简单的第一个项目的经历+一道简单的动态规划(最大乘积子数组(连续))(没做出来,头脑僵化,不习惯被人盯着写代码,紧张,下去后立马写出来了)
二面:
面试官:微软bing广告组前端小姐姐
没有废话 直接上题
1. 字符串s1如果仅通过一次交换元素能变成s2返回True,否则返回False。(s1, s2完全相同且没有重复元素的话,返回False; s1, s2完全相同且有重复元素的话(重复的这俩可以交换),返回True;)
我直接两个for遍历s1:i(0-n),j(i,n), 然后交换元素,如果有和s2相等的返回True, 整个遍历完了还没相等的返回False.
面试官对O(n²)的方案显然不满意,然后给我讲了O(n)的方法,我实现了
2. 关于stack,设计一个栈这个类内的函数,实现min(stack),要求时间复杂度O(1)。
噗,我服了我自己了,面试官问我栈了不了解我说知道它是先进后出,然后面试官说 你不是学计算机的,估计栈用得少,我们换一题吧。我TM竟然说,我可以,然后就这题了,当然我没任何思路,这怎么O(1)?面试官说空间换时间,emmm,我TM干嘛要说我可以。
第二题没做,换题
3. 数组内小于target的最大元素。
写是秒杀写出来了,但test case没弄好,比如nums = [3], target = 4,这种只有一个元素的,第一遍写的时候没输出正确结果,面试官说的这个case,然后改也改对了。但这么不严密的思维会不会给面试官留下不好印象啊!呜呜呜!!!
听说牛客很牛,祈祷过了进三面,且三面也顺利通过!或者直接现在就挂我吧,我再投别的岗位,别三面信息一直卡着来不及投别的岗位了。祈祷祈祷!!!
By the way, 我的面试官怎么都是广告组的?我的经历跟广告很匹配吗?没觉得啊?