zoukankan      html  css  js  c++  java
  • #Leetcode# 189. Rotate Array

    Given an array, rotate the array to the right by k steps, where k is non-negative.

    Example 1:

    Input: [1,2,3,4,5,6,7] and k = 3
    Output: [5,6,7,1,2,3,4]
    Explanation:
    rotate 1 steps to the right: [7,1,2,3,4,5,6]
    rotate 2 steps to the right: [6,7,1,2,3,4,5]
    rotate 3 steps to the right: [5,6,7,1,2,3,4]
    

    Example 2:

    Input: [-1,-100,3,99] and k = 2
    Output: [3,99,-1,-100]
    Explanation: 
    rotate 1 steps to the right: [99,-1,-100,3]
    rotate 2 steps to the right: [3,99,-1,-100]

    代码:

    class Solution {
    public:
        void rotate(vector<int>& nums, int k) {
            int n = nums.size();
            k %= n;
            vector<int> ans;
            for(int i = n - k; i < n; i ++)
                ans.push_back(nums[i]);
            for(int i = 0; i < n - k; i ++)
                ans.push_back(nums[i]);
            
            nums.clear();
            for(int i = 0; i < ans.size(); i ++)
                nums.push_back(ans[i]);
        }
    };
    

      

  • 相关阅读:
    小 X 的密码破译
    时光机
    战争
    iOS TDD
    iOS url schemes应用


    二分查找
    搜索
    链表
  • 原文地址:https://www.cnblogs.com/zlrrrr/p/10030142.html
Copyright © 2011-2022 走看看