微软电面

上周的新鲜电面:
面试官是印度人,女性,senior。具体面试流程如下:

  1. 自我介绍
  2. 为什么想加入微软
  3. 算法:
    给一个链表,要求每两组节点进行反转:
    输入是A->B->C->D->E->null
    输出是B->A->D->C->E->null
    写出代码,并要求带入验证。尤其是核心代码部分,要求走一遍例子。
    微软使用的是老式的collabedit,所以不具有运行的功能。所以需要认真的用例子,带入验证,并解释清楚代码。
    不允许使用额外空间。
    最后问solution是否能解决奇偶反转的情况。

cache两个node直接翻转吗?求答案。。。

参考

Reverse Nodes in k-Group

:+1::+1::+1:

上面那个是general的k个。如果是固定的2个,简化版本参考 Swap Nodes in Pairs 。难度降低。

好的 好的 谢谢哈

There is a input String and input of a list.
The return will be the longest subString in the list.

Example;

input
String: toes
List: { t, o, to, es, toes}

return {toes}

intput
String: toestate
List:{ et, eto, eteot, es, state}
reurn {eteot, state}