每日一题之LeetCode 61.旋转链表
题目链接:LeetCode 61. 旋转链表
¶一、题解
题目大意:
给定一个链表,将链表每个节点都向后移动k个位置!
思路:
- k的数非常大,所以可以和链表长度去个模!
- 由于
k %= n
,所以以防除0问题,先在最开始判断一下,若链表长度为0,则直接返回即可 - 将每个节点后移k位,即将链表后k个节点移到链表开头即可
- 指针向后移动
n - k - 1
次即可走到后k个节点的上一个节点 - 然后处理一下指针指向即可!
时间复杂度: O(n)
空间复杂度: O(1)
¶二、AC代码
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 小牛博客!
评论