反轉從位置 m 到 n 的鍊錶。請使用一趟掃瞄完成反轉。
說明:1 ≤ m ≤ n ≤ 鍊錶長度。
示例:輸入: 1->2->3->4->5->null, m = 2, n = 4
輸出: 1->4->3->2->5->null
思路就是用頭插法進行反轉……**裡注釋說得差不多了_(:з」∠)_
/**
* definition for singly-linked list.
* struct listnode
* };
*/class
solution
listnode* mark = phead-
>next;
//標記下反轉鍊錶的部分的最終節點,方便插入最後不用反轉的尾部
listnode* p = phead-
>next-
>next;
//要插入的節點
for(
int i =
0; i < n - m; i++
) mark-
>next = tmp;
return pre-
>next;}}
;
92 反轉鍊錶 II
反轉從位置 m 到 n 的鍊錶。請使用一趟掃瞄完成反轉。說明 1 m n 鍊錶長度。示例 輸入 1 2 3 4 5 null,m 2,n 4輸出 1 4 3 2 5 null definition for singly linked list.struct listnode class soluti...
LeetCode反轉鍊錶II
反轉從位置 m 到 n 的鍊錶。請使用一趟掃瞄完成反轉。說明 1 m n 鍊錶長度。示例 輸入 1 2 3 4 5 null,m 2,n 4 輸出 1 4 3 2 5 null 把鍊錶分為三部分,中間一部分當做反轉鍊錶i的方法 class solution listnode node pre lis...
leetcode 鍊錶反轉II
反轉從位置 m 到 n 的鍊錶。請使用一趟掃瞄完成反轉。說明 1 m n 鍊錶長度。示例 輸入 1 2 3 4 5 null,m 2,n 4 輸出 1 4 3 2 5 null 核心部分還是用普通鍊錶反轉的三指標法 注意幾個坑點 首先思路是直接遍歷到第m個節點之前的m 1個節點,並記錄該節點為pre...