定義一個函式,輸入一個連結串列的頭節點,反轉該連結串列並輸出反轉後連結串列的頭節點
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode* reverseList(struct ListNode* head){
if(head==NULL||head->next==NULL) return head;
struct ListNode *p,*q,*pre;
p=head;
q=head->next;
if(q->next==NULL) p->next=NULL;
while(q->next!=NULL){
pre=q->next;
q->next=p;
if(p==head) p->next=NULL;
p=q;
q=pre;
}
q->next=p;
return q;
}
相關文章
- 圖解帶頭節點的單連結串列的反轉操作圖解
- K個節點翻轉連結串列
- 連結串列面試題(二)---連結串列逆序(連結串列反轉)面試題
- 反轉連結串列
- 連結串列面試題(一)---刪除一個無頭單連結串列的非尾結點面試題
- Redis筆記 — 連結串列和連結串列節點的API函式(三)Redis筆記API函式
- #反轉連結串列_C++版 #反轉連結串列_Java版 @FDDLCC++Java
- 利用遞迴方法實現連結串列反轉、前N個節點反轉以及中間部分節點反轉遞迴
- 反轉連結串列、合併連結串列、樹的子結構
- 演算法題:反轉一個單連結串列&判斷連結串列是否有環演算法
- 【LeetCode-連結串列】面試題-反轉連結串列LeetCode面試題
- [連結串列]leetcode1019-連結串列中的下一個更大節點LeetCode
- 連結串列面試題(四)---查詢連結串列的中間節點面試題
- 帶頭結點的連結串列操作題
- 一個統一的連結串列結構 (轉)
- 面試必備的「反轉連結串列」面試
- 資料結構之連結串列:206. 反轉連結串列資料結構
- java實現連結串列反轉Java
- leetcode 反轉連結串列LeetCode
- TypeScript 實現連結串列反轉TypeScript
- 1025 反轉連結串列
- JavaScript從反轉陣列到連結串列反轉JavaScript陣列
- 單連結串列從尾到頭輸出元素
- Java連結串列指標確實好煩 - 交換連結串列中連續的兩個節點的位置Java指標
- Day4(連結串列)|24. 兩兩交換連結串列中的節點 & 19.刪除連結串列的倒數第N個節點 & 面試題 02.07. 連結串列相交 &142.環形連結串列II面試題
- Leetcode刷題之連結串列增加頭結點的字首節點LeetCode
- [每日一題] 第二題:反轉連結串列每日一題
- 【LeetCode連結串列#9】圖解:兩兩交換連結串列節點LeetCode圖解
- 單連結串列倒數第k結點輸出
- **24. 兩兩交換連結串列中的節點****19.刪除連結串列的倒數第N個節點****面試題 02.07. 連結串列相交****142.環形連結串列II**面試題
- leetcode 92 反轉連結串列ⅡLeetCode
- 遞迴演算法-不帶頭節點的單連結串列遞迴演算法
- 雙向連結串列 尾節點插入
- 演算法入門題:如何反轉一個單向連結串列?演算法
- **203.移除連結串列元素****707.設計連結串列****206.反轉連結串列**
- Day 4 | 24. 兩兩交換連結串列中的節點 、 19.刪除連結串列的倒數第N個節點 、面試題 02.07. 連結串列相交 、142.環形連結串列II面試題
- 資料結構和演算法——Go實現單連結串列並且反轉單連結串列資料結構演算法Go
- 【LeetCode】【連結串列】劍指 Offer 52. 兩個連結串列的第一個公共節點 思路解析和程式碼LeetCode