目录
Leetcode019删除链表的倒数第N个数--------快慢指针:
Leetcode024两两交换链表中的节点-------(for循环的妙用&&链表接连的顺序)
Leetcode206(翻转整段单链表)--------迭代法运用
Leetcode092(规定左右边界翻转区域内的链表)------迭代法
Leetcode106(相交链表)--------我走过你来时的路&&注意不要陷入死循环
Leetcode141、142(环形链表)--------快慢指针判断有没有环
Leetcode019删除链表的倒数第N个数--------快慢指针:
地址:
描述: (进阶扫描一次实现)
题解:
Leetcode019删除链表的倒数第N个数--------快慢指针_Myblog-CSDN博客
Leetcode083 删除排序链表中的重复元素
描述:
思想:
问题
代码:
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode() : val(0), next(nullptr) {}
* ListNode(int x) : val(x), next(nullptr) {}
* ListNode(int x, ListNode *next) : val(x), next(next) {}
* };
*/
class Solution {
public:
ListNode* deleteDuplicates(ListNode* head) {
//cur指针是指向head指针,不是创建一条新链表
//相当于是工作指针,修改head链表
ListNode *cur=head;
while(cur->next&&cur->next->next){
//说明产生重复
if(cur->val==cur->next->val){
cur->next=cur->next->next;
}
else {
cur=cur->next;
}
}
return head;
}
};
Leetcode 082删除排序链表中重复元素II
地址
描述
思想
代码
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode() : val(0), next(nullptr) {}
* ListNode(int x) : val(x), next(nullptr) {}
* ListNode(int x, ListNode *next) : val(x), next(next) {}
* };
*/
class Solution {
public:
ListNode* deleteDuplicates(ListNode* head) {
ListNode *dummy=new ListNode(-1);
dummy->next=head;
//p指针指向一段字符的前一个位置
ListNode *p=dummy;
//假如p后面有下一段
while(p->next){
//看下一段的第二个数
ListNode *q=p->next->next;
//假如q非空,且第二个数与第一个数相同,说明重复
while(q&&q->val==p->next->val) q=q->next;
//说明p指针没有动,说明没有重复
if(p->next->next==q) p=p->next;
else p->next=q;
}
return dummy->next;
}
};
Leetcode061(旋转链表)--------快慢指针
描述:
题解:
Leetcode061(旋转链表)--------快慢指针_Myblog-CSDN博客
Leetcode024两两交换链表中的节点-------(for循环的妙用&&链表接连的顺序)
描述:
题解:
Leetcode024两两交换链表中的节点-------(for循环的妙用&&链表接连的顺序)_Myblog-CSDN博客
Leetcode206(翻转整段单链表)--------迭代法运用
描述:
题解:
Leetcode206(翻转整段链表)--------迭代法运用_Myblog-CSDN博客
Leetcode092(规定左右边界翻转区域内的链表)------迭代法
描述:
本题是在206题的基础上增加了需要反转的左右边界
题解:
Leetcode092(规定左右边界翻转区域内的链表)------迭代法_Myblog-CSDN博客
Leetcode106(相交链表)--------我走过你来时的路&&注意不要陷入死循环
描述:
题解:
Leetcode106(相交链表)--------我走过你来时的路&&注意不要陷入死循环_Myblog-CSDN博客