【代码随想录二刷】Day4-链表-C++
admin
2024-05-23 12:38:36
0

代码随想录二刷Day4

今日任务

24.两两交换链表中的节点
19.删除链表的倒数第N个结点
面试题 02.07. 链表相交
142.环形链表II
语言:C++

24. 两两交换链表中的节点

链接:https://leetcode.cn/problems/swap-nodes-in-pairs/

/*** 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* swapPairs(ListNode* head) {if(head == nullptr || head->next == nullptr) return head;ListNode* dummyHead = new ListNode(0, head);ListNode* pre = dummyHead;ListNode* cur = head;ListNode* next = head->next;while(next != nullptr){pre->next = next;ListNode* tmp = next->next;next->next = cur;cur->next = tmp;pre = cur;cur = cur->next;if(cur != nullptr) next = cur->next;else next = nullptr;}head = dummyHead->next;delete dummyHead;return head;}
};

19. 删除链表的倒数第N个结点

链接:https://leetcode.cn/problems/remove-nth-node-from-end-of-list/

/*** 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* removeNthFromEnd(ListNode* head, int n) {ListNode* dummyHead = new ListNode(0, head);ListNode* slow = dummyHead, *fast = dummyHead;for(int i = 0; i < n; i++){fast = fast->next;}while(fast->next != nullptr){slow = slow->next;fast = fast->next;}ListNode* node = slow->next;slow->next = slow->next->next;delete node;head = dummyHead->next;delete dummyHead;return head;}
};

面试题 02.07. 链表相交

链接:https://leetcode.cn/problems/intersection-of-two-linked-lists-lcci/

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {if(headA == nullptr || headB == nullptr) return nullptr;ListNode* curA = headA;ListNode* curB = headB;while(curA != curB){if(curA == nullptr) curA = headB;else if(curB == nullptr) curB = headA;else{curA = curA->next;curB = curB->next;}}return curA;}
};

142. 环形链表II

链接:https://leetcode.cn/problems/linked-list-cycle-ii/
一些还没掌握太好的问题:
1.为什么快慢指针会在入环第一圈内就相遇?
2.如何确认环入口的位置,为什么可以这样确认?

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:ListNode *detectCycle(ListNode *head) {ListNode* slow = head, *fast = head;while(fast != nullptr && fast->next != nullptr){slow = slow->next;fast = fast->next->next;if(slow == fast){slow = head;while(slow != fast){slow = slow->next;fast = fast->next;}return fast;}}return nullptr;}
};

相关内容

热门资讯

酒神的看书虫是什么意思 酒神的看书虫是什么意思酒神的看书虫是什么意思酒神是一本很好的小说,酒神的看书虫就是指喜欢这本书的读者
你说什么都对用成语怎么说 你说什么都对用成语怎么说【成语】: 言之有理【拼音】: yán zhī yǒu lǐ 【解释】: 说...
9377传奇霸主150级后怎么... 9377传奇霸主150级后怎么升级?在等级达到150级后,要想继续快速提升等级,就可以借助经验丹的道...
郭沫若写的《白鹭》是什么类型的... 郭沫若写的《白鹭》是什么类型的散文这是一篇抒情散文 一般来说抒情性散文指侧重于表现思想感情、内心体验...
有横尸遍野这个词吗? 还是尸横... 有横尸遍野这个词吗? 还是尸横遍野?给我一个明确的答复)正确词目 尸横遍野   发音 shī h...
算卦真的只是骗人的把戏吗? 算卦真的只是骗人的把戏吗?我们这有个算卦的老婆婆,我的朋友们起初都不相信,后来他们去试,结果后来那老...
推荐新书 推荐新书我也刚买了一本书,叫《蝴蝶公墓》蔡竣写的,是心理悬疑小说 之前我也看过他的几本小说,象《荒村...
外研版初中二年级上册英语MP3 外研版初中二年级上册英语MP3急!你可以在baidu上搜搜(我试过),不过很少,建议你去书店买磁带。
想找一些适合一年级学生看的故事... 想找一些适合一年级学生看的故事带图片和拼音的找一个好老师或生动的课堂 多读,多念,多练。每天坚持朗读...
亲子游泳的意义和好处 亲子游泳的意义和好处亲子游泳顾名思义,在传统游泳运动基础上,添加了亲子元素给幼小孩子们,让婴儿时期孩...
葡萄酒如何品鉴 葡萄酒如何品鉴最近身边好多的人都在喝葡萄酒,感觉特别高雅,我也想加入这个行列看酒,闻香,品尝好的葡萄...
战友情为什么这么深比兄弟似乎还... 战友情为什么这么深比兄弟似乎还要深,比因为大家一起摸爬滚打的走过来,这是其他无法经历的,所以感情要比...
写静的排比句有哪些? 写静的排比句有哪些?以静得怎么样来写写静的排比句:月凉如水,周围一片寂静。静得能听见虫子的歌声,静得...
孔子的老师是钻子!没有钻子,哪... 孔子的老师是钻子!没有钻子,哪来的孔子呀?我看你家有儿女看多了,是老子好吧你以为你是刘星啊
类似于 语羽的<酷总裁的... 类似于 语羽的<酷总裁的迷糊宝贝>和 <相公,我来了> ,男主角很专一也很宠女主角 什么事都以女主角...
公司财务(数学)中的"... 公司财务(数学)中的"期望值"怎么理解,它在生活中怎么用?同意楼上。如果作风险投资的话,须期望值的基...
三国小说 经营+无限任务的 三国小说 经营+无限任务的没看过好像有点意思。。。....是不是帝国进化 主人公转的是封神者 ...
大学生不谈恋爱正常吗 大学生不谈恋爱正常吗当然正常,以往大学生恋爱比率非常低,我们班才4对,其中两对还是占用其他班的女生资...
暑假带娃去西安旅游管家怎么收费... 西安,这座十三朝古都,以其深厚的历史文化底蕴和丰富的旅游资源吸引着无数游客。我也不例外,最近有幸和朋...
暑假上海酒店预订量爆了 暑假上海酒店预订量确实呈现爆发式增长,同比增长约40%,部分热门区域和主题乐园周边酒店甚至出现“一房...