給定乙個鍊錶,旋轉鍊錶,將鍊錶每個節點向右移動 k 個位置,其中 k 是非負數。
示例 1:
輸入:1->2->3->4->5->null, k = 2輸出:4->5->1->2->3->null解釋:向右旋轉 1 步: 5->1->2->3->4->null示例 2:向右旋轉 2 步: 4->5->1->2->3->null
輸入:0->1->2->null, k = 4輸出:2->0->1->null
解釋:向右旋轉 1 步: 2->0->1->null向右旋轉 2 步: 1->2->0->null
向右旋轉 3 步:
0->1->2->null
向右旋轉 4 步:2->0->1->null
/**
* definition for singly-linked list.
* struct listnode
* };
*/class solution
k%=n;
listnode *fast = head, *slow = head;
for(int i = 0; i < k; i++)
if(!fast) return head;
while(fast->next)
fast->next = head;
fast = slow->next;
slow->next = null;
return fast;
}};
/**
* definition for singly-linked list.
* struct listnode
* };
*/class solution
cur->next = head;
int m = n-k%n;
for(int i = 0; i < m; i++)
listnode *newhead = cur->next;
cur->next = null;
return newhead;
}};
leetcode 騰訊 旋轉鍊錶
原題 給定乙個鍊錶,旋轉鍊錶,將鍊錶每個節點向右移動 k 個位置,其中 k 是非負數。示例 1 輸入 1 2 3 4 5 null,k 2 輸出 4 5 1 2 3 null 解釋 向右旋轉 1 步 5 1 2 3 4 null 向右旋轉 2 步 4 5 1 2 3 null 示例 2 輸入 0 1...
鍊錶 旋轉鍊錶
力扣原題 definition for singly linked list.public class listnode class solution 計算鍊錶長度 int length 0 listnode cur head while null cur 模擬k輪鍊錶旋轉 for int i 0 ...
騰訊精選練習題34 旋轉鍊錶
給定乙個鍊錶,旋轉鍊錶,將鍊錶每個節點向右移動 k 個位置,其中 k 是非負數。示例 1 輸入 1 2 3 4 5 null,k 2輸出 4 5 1 2 3 null解釋 向右旋轉 1 步 5 1 2 3 4 null 向右旋轉 2 步 4 5 1 2 3 null示例 2 輸入 0 1 2 nul...