微软面经
一面 (电面)
1.非严格递增数组搜索key值,返回在数组中位置,如果存在多个key值返回最后一个key位置
例: 1 2 2 2 3返回3
2.链表删除重复节点
例:1 1 2 3 3 4 5 返回 2 4 5
随便聊了聊学校方向等等
二面
1.把链表中所有节点值为奇数的节点放在节点值为偶数的节点前面
例:1 2 3 4 5 返回1 3 5 2 4
2.遍历图中所有点的最短路径(跟项目有关)
3.日程有两种操作,一种插入,即给出开始时间和结束时间,表示该时间范围有事件发生,另一种是查询操作,给出一个点,返回是否有事件发生
三面
聊项目
讨论了下hash表的多种实现
实现lru
四面
聊项目
1.按层次遍历输出树中节点
2.给一个文件,每一行存一颗树,和第一题输出结果,写个程序检查输出结果是否正确,树的存储自行设计