zoukankan      html  css  js  c++  java
  • 61. Rotate List

    description:

    Given a linked list, rotate the list to the right by k places, where k is non-negative.
    Note:

    Example:

    Example 1:
    
    Input: 1->2->3->4->5->NULL, k = 2
    Output: 4->5->1->2->3->NULL
    Explanation:
    rotate 1 steps to the right: 5->1->2->3->4->NULL
    rotate 2 steps to the right: 4->5->1->2->3->NULL
    
    Example 2:
    
    Input: 0->1->2->NULL, k = 4
    Output: 2->0->1->NULL
    Explanation:
    rotate 1 steps to the right: 2->0->1->NULL
    rotate 2 steps to the right: 1->2->0->NULL
    rotate 3 steps to the right: 0->1->2->NULL
    rotate 4 steps to the right: 2->0->1->NULL
    

    answer:

    /**
     * Definition for singly-linked list.
     * struct ListNode {
     *     int val;
     *     ListNode *next;
     *     ListNode(int x) : val(x), next(NULL) {}
     * };
     */
    class Solution {
    public:
        ListNode* rotateRight(ListNode* head, int k) {
            if (!head) return NULL;
            ListNode* cur = head;
            int n = 1;
            while(cur->next){
                n++;
                cur = cur->next;
            }
            cur ->next = head;
            int m = n - k%n;
            for (int i = 0; i < m; ++i) {
                cur = cur->next;
            }
            ListNode *newhead = cur -> next;
            cur->next = NULL;
            return newhead;
        }
    };
    
    

    relative point get√:

    hint :

  • 相关阅读:
    退出程序
    筛选datatable
    1-2 开发环境搭建-Windows平台
    5-1 安全发布对象-发布与逸出
    4-4 线程安全性-可见性
    4-3 线程安全性-原子性-synchronized
    4-2 线程安全性-原子性-atomic-2
    4-1 线程安全性-原子性-atomic-1
    Spring
    Spring
  • 原文地址:https://www.cnblogs.com/forPrometheus-jun/p/11330011.html
Copyright © 2011-2022 走看看