0061. 旋转链表 #
- 标签:链表、双指针
- 难度:中等
题目大意 #
给定一个链表和整数 k,将链表每个节点向右移动 k 个位置。
解题思路 #
我们可以将链表先连成环,然后将链表在指定位置断开。
先遍历一遍,求出链表节点个数 n。注意到 k 可能很大,我们只需将链表右移 k % n 个位置即可。
第二次遍历到 n - k % n 的位置,记录下断开后新链表头节点位置,再将其断开并返回新的头节点。
代码 #
|
|
给定一个链表和整数 k,将链表每个节点向右移动 k 个位置。
我们可以将链表先连成环,然后将链表在指定位置断开。
先遍历一遍,求出链表节点个数 n。注意到 k 可能很大,我们只需将链表右移 k % n 个位置即可。
第二次遍历到 n - k % n 的位置,记录下断开后新链表头节点位置,再将其断开并返回新的头节点。
|
|