今天在整理链表的知识点,基本上分为单链表,双链表,循环链表和双向循环链表,而每一种链表中有分是否带空值头结点。在链表中涉及的常规操作有四种
1. 遍历
2. 插入
3. 删除
4. 查找
面试中还会出现一些比较复杂的操作,如:
1. 合并
2. 交叉与环
3. 分离
4. 排序
链表中涉及的所有知识点包括如下方面。大家若是发现还有其他类型的话,欢迎补充,接下来打算全部梳理一遍,结合面试真题,写出具体的逻辑,和代码实现。到时候再分享给大家哈。
1. 插入, 头结点插入、尾节点插入
2. 删除: 单链表、双链表,按值、按节点
3. 单链表遍历,双链表遍历
4. 复制链表节点 1-2-3 =》 1-1-2-2-3-4
5. 找第k个节点, 倒数第K个节点
6. 删除第K个,倒数第K个节点
7. 两个单链表是否相交,若相交求交点
8. 单链表是否构成环,找出环的入口点
9. 双循环链表递减有序,插入元素
10. 合并有序单链表
11. 链表与二叉树互转
12. 删除满足特定条件的节点
13. 分离链表奇数、偶数节点
14. 逆转单链表
15. 倒序打印
16. 双向循环链表是否对称
17. 链表排序