一.删除有序链表中的重复元素I
1.对应牛客网链接:
2.题目描述:
3.解题思路
下面以1->2->3->3->4为例:
由于 cur 指向的节点的值(1)不等于 next 指向的节点的值(2),两个指针右移
不相等继续后移
相等,cur 指向 next 的下一节点(相当于删除链表中的重复元素 3),next 指针右移
直到next为空
4.对应代码
递归版本:
二.删除有序链表重复元素II
1.对应牛客网链接:
2.题目描述:
3.解题思路
下面我们以1->3->3->4->4->5为例:
初始状态:
发现prev和cur的值不相等三个指针一起移动
此时prev和cur的值一样我们进行删除:
删除完成之后我们发现prev和cur的值又相等了继续进行删除
直到cur走到空结束循环将头节点返回即可
注意:(如果一开始就是头删需要进行特判改变头节点)
4.对应代码
递归版本:
三.环形单链表中插入一个元素
1.对应letecode链接:
2.题目描述:
3.解题思路:
4.对应代码:
四.单链表翻转II
1.对应牛客网链接
2.题目描述:
3.解题思路:
4.对应代码:
递归版本:
对应代码
五.奇偶链表
1.对应letecode链接:
2.题目描述:
3.解题思路:
4.对应代码: