[LeetCode]数组——旋转数组

给定一个数组,将数组中的元素向右移动 个位置,其中 是非负数。

C++

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

C

void rotate(int* nums, int numsSize, int k) {
    int t[numsSize],i;
    for (i = 0; i < numsSize; i++) {
        t[i] = nums[i];
    }
    for (i = 0; i < numsSize; i++) {
        nums[(i + k) % numsSize] = t[i];
    }
}

猜你喜欢

转载自www.cnblogs.com/moonpie-sun/p/9418251.html