連結串列面試題(二)---連結串列逆序(連結串列反轉)
一、結構體定義
typedef int DataType;
typedef struct ListNode//定義結點
{
DataType data;
struct ListNode* next;
}ListNode,*PListNode;
typedef struct PList//定義一個成員是指向結點的指標的結構體
{
PListNode PHead;
}List,*PList;
二、程式碼:
//2.連結串列逆序(翻轉)
void ReverseList(PList PList)
{
PListNode cur=NULL;
PListNode NewNode=NULL;
PListNode tmp=NULL;
cur=PList->PHead;
assert(PList);
if (PList->PHead==NULL||PList->PHead->next==NULL)//空連結串列或著只有一個結點的連結串列
{
return PList->PHead;
}
else//大於兩個結點
{
while (cur)
{
tmp=cur;
cur=cur->next;//先將當前指標更新到下一個結點
tmp->next=NewNode;
NewNode=tmp;
}
PList->PHead=NewNode;//更新連結串列的頭
}
}
相關文章
- 【LeetCode-連結串列】面試題-反轉連結串列LeetCode面試題
- 資料結構實驗之連結串列二:逆序建立連結串列資料結構
- 反轉連結串列
- 反轉連結串列、合併連結串列、樹的子結構
- #反轉連結串列_C++版 #反轉連結串列_Java版 @FDDLCC++Java
- 【圖解連結串列類面試題】移除連結串列元素圖解面試題
- 【圖解連結串列類面試題】環形連結串列圖解面試題
- Java 單連結串列逆序Java
- 連結串列專題——面試中常見的連結串列問題面試
- (連結串列)連結串列的排序問題排序
- 連結串列面試題(七)---合併兩個有序連結串列面試題
- 面試必備的「反轉連結串列」面試
- 資料結構之連結串列:206. 反轉連結串列資料結構
- [每日一題] 第二題:反轉連結串列每日一題
- 連結串列4: 迴圈連結串列
- 連結串列入門與插入連結串列
- 劍指offer面試16 反轉連結串列面試
- 連結串列面試題(九)---判斷一個連結串列是否帶環面試題
- 連結串列面試題(四)---查詢連結串列的中間節點面試題
- java實現連結串列反轉Java
- leetcode 反轉連結串列LeetCode
- TypeScript 實現連結串列反轉TypeScript
- 1025 反轉連結串列
- 演算法題:反轉一個單連結串列&判斷連結串列是否有環演算法
- 連結串列面試題(十一)---求帶環單連結串列 環的入口點面試題
- 連結串列面試題(六)---刪除單連結串列倒數第k個結點面試題
- javascript中的連結串列結構—雙向連結串列JavaScript
- 資料結構與演算法——連結串列 Linked List(單連結串列、雙向連結串列、單向環形連結串列-Josephu 問題)資料結構演算法
- Leetcode_86_分割連結串列_連結串列LeetCode
- 【LeetCode】->連結串列->通向連結串列自由之路LeetCode
- 連結串列面試題(十)---求帶環單連結串列的環的長度面試題
- 連結串列面試題(十三)---求兩個都不帶環的連結串列相交的結點面試題
- leetcode 92 反轉連結串列ⅡLeetCode
- php連結串列PHP
- 連結串列操作
- 2、連結串列
- JavaScript從反轉陣列到連結串列反轉JavaScript陣列
- 連結串列面試題(五)---尋找連結串列的倒數第k個結點O(N)面試題