力扣網刷題筆記 第206題 反轉鍊錶

2021-09-28 19:07:32 字數 906 閱讀 1021

題目:

反轉乙個鍊錶

例項:輸入:1->2->3->4->5->null

輸出:5->4->3->2->1->null

分析:

第一步:將上一結點present指向null,current指向首元結點,next指向正向鍊錶的下乙個結點。

第二步:先將當前結點current指向上一結點present,然後將當前結點賦值給上一節點,最後將下一結點與當前結點相連,斷開了當前結點與上一結點的連線。然後使下一節點next再後移一次。

第三步:重複第二步的步驟,直至到next結點指向null時結束迴圈,再將最後乙個結點current反轉指向上一結點。鍊錶反轉到此結束。

**如下:

/**

* definition for singly-linked list.

* struct listnode ;

*/struct listnode*

reverselist

(struct listnode* head)

current->next = present->next;

//將最後乙個結點反轉

return current;

}

力扣206題 92題 25題(反轉鍊錶)

雙指標迭代 1 申請兩個指標,乙個叫pre,乙個叫cur cur代表的是當前節點,pre是cur的前乙個節點 剛開始,pre指向null,cur是第乙個節點 然後cur和pre共同往後走,cur每走完一步就要指向pre cur變成none了,就迭代完了 2 cur如何往後走 tmp記錄cur當前節點...

力扣 206反轉鍊錶

package leetcode真題分門別類.鍊錶 author bennyrhys date 2020 05 29 11 42 思路 鍊錶翻轉,直接改變指標指向 儲存狀態需要建立三個指標 pre前 cur當前 next下乙個 複雜度 時間o n 空間o 1 注意while處正好判斷cur是否為空的...

力扣 206 反轉鍊錶

反轉乙個單鏈表。示例 輸入 1 2 3 4 5 null 輸出 5 4 3 2 1 null 三個指標往後移,當 cur 指標為空時跳出迴圈 1 2 definition for singly linked list.3 public class listnode 7 8 9class soluti...