您好,登錄后才能下訂單哦!
如何分析Reverse Linked List ,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
反轉鏈表
反轉從位置 m 到 n 的鏈表。請使用一趟掃描完成反轉。
說明:
1 ≤ m ≤ n ≤ 鏈表長度。
示例:
輸入: 1->2->3->4->5->NULL, m = 2, n = 4.
輸出: 1->4->3->2->5->NULL
Reverse Linked List 的延伸題。
可以考慮取出需要反轉的這一小段鏈表,反轉完后再插入到原先的鏈表中。
以本題為例:
變換的是2,3,4這三個點,那么我們可以先取出2,用front指針指向2,然后當取出3的時候,我們把3加到2的前面,把front指針前移到3,依次類推,到4后停止,這樣我們得到一個新鏈表4->3->2, front指針指向4。
對于原鏈表來說,有兩個點的位置很重要,需要用指針記錄下來,分別是1和5,把新鏈表插入的時候需要這兩個點的位置。
用pre指針記錄1的位置
當4結點被取走后,5的位置需要記下來
這樣我們就可以把倒置后的那一小段鏈表加入到原鏈表中
動畫演示GIF加載有點慢,請稍等片刻^_^
關于如何分析Reverse Linked List 問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。