美文网首页
61. Rotate List

61. Rotate List

作者: jecyhw | 来源:发表于2019-05-30 06:19 被阅读0次

题目链接

https://leetcode.com/problems/rotate-list/

解题思路

直接看代码。

代码

class Solution {
public:
    ListNode* rotateRight(ListNode* head, int k) {
        if (head == NULL) {
            return head;
        }

        //先算节点数量
        int count = 0;
        ListNode *cur = head;
        while (cur != NULL) {
            count++;
            cur = cur->next;
        }

        //算出从第几个节点开始旋转
        k = count - k % count;
        if (k == count) {
            return head;
        }
        cur = head;
        for (int i = 0; i < k - 1; ++i) {
            cur = cur->next;
        }
        ListNode* newHead = cur->next;
        cur->next = NULL;

        cur = newHead;

        while (cur->next != NULL) {
            cur = cur->next;
        }
        cur->next = head;

        return newHead;
    }
};

相关文章

  • 61. Rotate List

    题目61. Rotate List Given a list, rotate the list to the ri...

  • 61. Rotate List

    61. Rotate List

  • LeetCode 61-65

    61. Rotate List[https://leetcode-cn.com/problems/rotate-l...

  • 【D33】旋转链表 (LC61)

    61. 旋转链表[https://leetcode-cn.com/problems/rotate-list/] 给...

  • 61. Rotate List

    这一题边界需要考虑一些边界条件:1,k=02, 链表为空或者链表中只有一个元素 旋转的step为0代码如下:

  • 61. Rotate List

    Given a list, rotate the list to the right by k places, w...

  • 61. Rotate List

    题目 Given a list, rotate the list to the right by k places...

  • 61. Rotate List

    题目描述:给一个链表和非负整数k,将其在下标k处翻转。如: Given 1->2->3->4->5->NULL a...

  • 61. Rotate List

    Given a list, rotate the list to the right by k places, w...

  • 61. Rotate List

    Given a list, rotate the list to the right by k places, w...

网友评论

      本文标题:61. Rotate List

      本文链接:https://www.haomeiwen.com/subject/cimptctx.html