面试必聊的排序与KMP
1. 希尔排序

先分组,组内遍历,最后选择一种排序方式组内排序
2. 归并排序
3. 快速排序



4. KMP

公共步长为移动步长,next数组


1. 判断链表是否有环?
慢指针 往后面移动一个,快指针 每一次移动两个
只要有环,则快指针与慢指针会在环里相遇
2. 判断两个链表是否有公共节点(是否相交)?
假设链表A长度为7,链表B长度为5,则从长度更长的链表A的第三(3 == 7 - 5 + 1)个节点和链表B的第一个节点开始同时遍历,如果过程中有相同的节点,则有公共节点
3. 链表反转

4.单向链表如何找到倒数第n个节点
提示:两个指针相差n的距离,其中一个为null时,另一个为倒数第n个
博客围绕面试常考的排序、KMP及链表问题展开。排序部分介绍了希尔排序、归并排序和快速排序;KMP涉及公共步长和next数组;链表问题包括判断是否有环、是否相交、反转链表以及找倒数第n个节点等内容。
3207

被折叠的 条评论
为什么被折叠?



