反轉從位置 m 到 n 的鍊錶。請使用一趟掃瞄完成反轉。
說明:1 ≤ m ≤ n ≤ 鍊錶長度。
示例:輸入: 1->2->3->4->5->null, m = 2, n = 4
輸出: 1->4->3->2->5->null
public
class
p92int index =1;
listnode p = head;
if(m==1)
last.next = p;
return first;
}else
listnode s1 = p;
p = p.next;
index++
; listnode last = p;
listnode first = null;
listnode rpre = null;
while
(p!=null&&index-
1!=n)
s1.next = first;
last.next = p;
return head;}}
}
思路:
判斷m=1是否成立,如果成立,最後返回的頭結點不是head,而是中間的某個節點
找到鍊錶中m到n的節點,通過設定前驅節點的方式將m到n出的鍊錶反轉過來
Leetcode習題集 鍊錶
這裡記錄一些我刷題的思路方便之後進行複習重溫,同時也方便進行新增 p141 環形鍊錶 class solution listnode reverse listnode head return pre 使用翻轉鍊錶,判斷返回的指標與傳進的指標是否相同,時間複雜度是o n 可能 空間複雜度是o 1 cl...
leetcode習題集 54 螺旋矩陣
給定乙個包含 m x n 個元素的矩陣 m 行,n 列 請按照順時針螺旋順序,返回矩陣中的所有元素。示例 1 輸入 1,2,3 4,5,6 7,8,9 輸出 1,2,3,6,9,8,7,4,5 示例 2 輸入 1,2,3,4 5,6,7,8 9,10,11,12 輸出 1,2,3,4,8,12,11...
leetcode習題集 56 合併區間
給出乙個區間的集合,請合併所有重疊的區間。示例 1 輸入 1,3 2,6 8,10 15,18 輸出 1,6 8,10 15,18 解釋 區間 1,3 和 2,6 重疊,將它們合併為 1,6 示例 2 輸入 1,4 4,5 輸出 1,5 解釋 區間 1,4 和 4,5 可被視為重疊區間。public...