題目**
給你乙個鍊錶,每 k 個節點一組進行翻轉,請你返回翻轉後的鍊錶。
k 是乙個正整數,它的值小於或等於鍊錶的長度。
如果節點總數不是 k 的整數倍,那麼請將最後剩餘的節點保持原有順序。
示例:
給你這個鍊錶:1->2->3->4->5
當 k = 2 時,應當返回:2->1->4->3->5
當 k = 3 時,應當返回:3->2->1->4->5
思路:回憶常規鍊錶反轉,將每部分反轉的鏈起來
//常規鍊錶反轉
public static listnode reverse(listnode head,int k) {
listnode p=head;
listnode newhead=null;
for (int i = 0; i 對於這個鍊錶:1->2->3->4->5
新增啞結點後: 0->1->2->3->4->5 此時p=0 q=1
第一次反轉
temp=1 q=3 2= reverse(1,2)
0->2->1 p=1 剩下3->4>5
第二次反轉
temp=3 q=5 4=reverse(3,2)
0->2->1->4->3 p=3 剩下 5
第三次temp=5 q==null 0->2->1->4->3->5
k個一組翻轉鍊錶
題目描述 給出乙個鍊錶,每 k 個節點一組進行翻轉,並返回翻轉後的鍊錶。k 是乙個正整數,它的值小於或等於鍊錶的長度。如果節點總數不是 k 的整數倍,那麼將最後剩餘節點保持原有順序。示例 給定這個鍊錶 1 2 3 4 5當 k 2 時,應當返回 2 1 4 3 5當 k 3 時,應當返回 3 2 1...
K 個一組翻轉鍊錶
給你乙個鍊錶,每 k 個節點一組進行翻轉,請你返回翻轉後的鍊錶。k 是乙個正整數,它的值小於或等於鍊錶的長度。如果節點總數不是 k 的整數倍,那麼請將最後剩餘的節點保持原有順序。示例 給定這個鍊錶 1 2 3 4 5 當 k 2 時,應當返回 2 1 4 3 5 當 k 3 時,應當返回 3 2 1...
K個一組翻轉鍊錶
難度困難416收藏分享切換為英文關注反饋 給你乙個鍊錶,每 k 個節點一組進行翻轉,請你返回翻轉後的鍊錶。k 是乙個正整數,它的值小於或等於鍊錶的長度。如果節點總數不是 k 的整數倍,那麼請將最後剩餘的節點保持原有順序。示例 給你這個鍊錶 1 2 3 4 5 當 k 2 時,應當返回 2 1 4 3...