找个实习:面经-II | 打满鸡血来刷题



找个实习:面经-II | 打满鸡血来刷题

微软苏州是用Skype For Business进行视频面试的【Skype For Business并不好用啊……】

面试之前,HR就承诺每个人都会有至少两轮的面试。但我并没有想到面试是上来直接白板写代码【捂脸】

第一轮面试,上来先做自我介绍,然后话不多说,直接进入了白板写代码环节【猝不及防】。给定一个二叉树,找出两个节点,使得它们是二叉树当中距离最短的两个节点。我在思考过程中提供了一些思路,然而想了半天都没有最终解决。面试官决定降低难度,将题目改成让我求给定二叉树的深度。我提供了DFS的解决方案,当然也可以利用BFS来解决。向面试官提问之后,一面就这样尴尬地结束了。

第二轮面试,上来也是一段简短的自我介绍,由于比较紧张,居然忘了Sun的那款Unix系统叫啥名字了(Solaris),非常尴尬。接下来仍然是白板写代码环节。还是问的二叉树,不过换成了平衡二叉树。题目也比较简单【可能是看我前一题答得不好吧】。给定一个二叉树,如何判断这个二叉树是平衡二叉树?很容易想到用对这个二叉树进行中序遍历,看遍历的结果是否有序即可。代码实现起来也不是很难,在虚拟白板上敲出来之后,面试官给了我一个提问的机会。二面就这样结束了。

二面结束之后我以为GG了,就打电话和同学吐槽。然而20分钟后,三面的电话突然打来了。再次启动视频界面,从面试官的谈吐中,感受到这次面试我的是个大boss。大boss先说二三面时间间隔太长,向我表示歉意【不长不长我和同学吐槽来着我还没反应过来呢】。接下来给我描述了一个情景问题。在图形化界面中,我们需要使用右键菜单。由于屏幕的大小一定,我们需要保证右键菜单不越过屏幕。现在给定鼠标的当前坐标,求生成的右键菜单矩形对角线点的坐标。这一题只要考虑到边界条件就不难。Boss让我先考虑清楚再码代码,这确实是一个应该养成的好习惯。最后顺利完成代码,从头到尾给Boss解释了一遍,他表示很满意。三面就愉快地结束了。


Read full article from 找个实习:面经-II | 打满鸡血来刷题


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts