leetcode 92 反轉鍊錶 II

2021-10-22 14:18:50 字數 785 閱讀 9249

給你單鏈表的頭節點 head 和兩個整數 left 和 right ,其中 left <= right 。請你反轉從位置 left 到位置 right 的鍊錶節點,返回 反轉後的鍊錶 。

示例 1:

輸入:head = [1,2,3,4,5], left = 2, right = 4

輸出:[1,4,3,2,5]

示例 2:

輸入:head = [5], left = 1, right = 1

輸出:[5]

找出需要迴圈的鍊錶段的兩個節點,翻轉該段的鍊錶,然後將這段與原鍊錶不需要翻轉部分的首尾連線上

/**

* definition for singly-linked list.

* public class listnode

* listnode(int val)

* listnode(int val, listnode next)

* }*/class

solution

listnode next=s.next;

for(

int i =

0; i < right; i++

)//找出翻轉鍊錶段的頭尾

listnode end=e.next;

listnode pre=end;

while

(next!=end)

//翻轉鍊錶

s.next=pre;

return th.next;

}}

leetcode 92反轉鍊錶

反轉從位置 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.public class listnode class...

LeetCode 92 反轉鍊錶 II

反轉從位置 m 到 n 的鍊錶。請使用一趟掃瞄完成反轉。說明 1 m n 鍊錶長度。示例 輸入 1 2 3 4 5 null,m 2,n 4 輸出 1 4 3 2 5 null 5ms definition for singly linked list.public class listnode c...

leetcode92 反轉鍊錶 II

反轉從位置 m 到 n 的鍊錶。請使用一趟掃瞄完成反轉。說明 1 m n 鍊錶長度。示例 輸入 1 2 3 4 5 null,m 2,n 4輸出 1 4 3 2 5 null思路 先往後遍歷找到需要反轉的節點作為起點 count m 然後按照劍指offer 反轉鍊錶 的思路,設定curr,pre,p...