此题主要在于理解旋转链表的含义
代码
class Solution {
public:
ListNode *rotateRight(ListNode *head, int k) {
if(head==NULL||k==0)
return head;
int len = 1;
ListNode* p = head;
while(p->next!=NULL)
{
p = p->next;
len++;
}
p->next = head;
int step = len - (k%len);
while(step>0)
{
p = p->next;
step--;
}
ListNode* newHead = p->next;
p->next = NULL;
return newHead;
}
};
本文详细解析了旋转链表的实现过程,包括定义、核心算法及实例代码。
719

被折叠的 条评论
为什么被折叠?



