leetcode92 反轉鍊錶II

2021-09-27 04:32:34 字數 1301 閱讀 8110

反轉從位置 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

solution

for(

int i =

0; i < m; i++

) list

listnodes =

newarraylist

<

>()

; listnode m1 = m;

while

(m != n)

listnodes.

add(n.val)

;int len_listnodes = listnodes.

size()

;for

(int i =

0; i < len_listnodes/

2; i++

)int i =0;

while

(m1 != n)

n.val = listnodes.

get(len_listnodes-1)

;return head;

}}

檢視大佬的**,他們將乙個節點看作乙個棧的結構,充分利用了棧的思想

// others

public listnode reversebetween

(listnode head,

int m,

int n)

int cnt =1;

listnode pre = null;

listnode cur;

listnode tail;

if(m ==1)

tail.next = cur;

return pre;

}else

cur = cutnode.next;

tail = cutnode.next;

while

(cnt < n && cur != null)

cutnode.next = pre;

tail.next = cur;

return head;

}}

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...