Leetcode剑指 Offer II 024. 反转链表
生活随笔
收集整理的這篇文章主要介紹了
Leetcode剑指 Offer II 024. 反转链表
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 題目
- 題解
題目
https://leetcode-cn.com/problems/UHnkqh/submissions/
題解
題目所給的頭結點是指第一個數據節點,所以我們需要自己建立虛擬頭結點dummy,并指向第一個數據節點head。
然后就是遍歷鏈表的后兩個節點,不斷將后一個結點q前移,并用dummy指向這個q。
ac代碼
/*** 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* reverseList(ListNode* head) {// 需要自己建立虛擬頭結點ListNode *dummy =(ListNode *)malloc(sizeof(ListNode));dummy->next = head;if (head == NULL) return NULL; // 空鏈表ListNode *p = dummy->next;ListNode *q;while (p->next) {q = p->next;p->next = q->next;q->next = dummy->next;dummy->next = q; }return dummy->next;} };總結
以上是生活随笔為你收集整理的Leetcode剑指 Offer II 024. 反转链表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Leetcode1963. 使字符串平衡
- 下一篇: 2021合工大超越卷数二好题精选