题解 | #向左移动牛群#

向左移动牛群

https://www.nowcoder.com/practice/e70fc604c3684ce294e6af5e97feff04

#include <iterator>
class Solution {
  public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param nums int整型vector
     * @param k int整型
     * @return int整型vector
     */
    vector<int> rotateCows(vector<int>& nums, int k) {
        // write code here
        int n = nums.size();
        k %= n;
        reverse(nums.begin(), nums.begin() + n - k);
        reverse(nums.begin() + n - k, nums.end());
        reverse(nums.begin(), nums.end());
        return nums;
    }
};

一、题目考察的知识点

数组翻转

二、题目解答方法的文字分析

考研数据结构真题里面有一道一模一样的题,我记得当时备考的时候做过,好像还不知一道

就是先要对k取余,毕竟k大于n的时候做了无用功,也就是相当于没有翻转

所以先翻转局部,然后再整体翻转就能得到想要的答案

三、本题解析所用的编程语言

c++

全部评论

相关推荐

06-12 16:00
天津大学 Java
牛客30236098...:腾讯坏事做尽,终面挂是最破防的 上次被挂了后我连简历都不刷了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务