Rotate Array
给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。
暴力办法(超时)
每次移一位
- 时间复杂度O(n*k)
- 空间复杂度O(1)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16/**
* @param {number[]} nums
* @param {number} k
* @return {void} Do not return anything, modify nums in-place instead.
*/
var rotate = function (nums, k) {
//暴力法,每次一个元素
while (k > 0) {
var last = nums[nums.length - 1];
for (let i = nums.length - 1; i > 0; i--) {
nums[i] = nums[i - 1];
}
nums[0] = last;
k--;
}
};