在JavaScript中查找数组的旋转
我们需要编写一个包含数组和数字n的JavaScript函数。
我们的函数应该将数组旋转n个元素,即从前面开始取n个元素并将其放到末尾。
这里唯一的条件是我们必须在不使用任何额外内存空间的情况下执行此操作-
例如-
如果输入数组如下,
const arr = [12, 6, 43, 5, 7, 2, 5];
并且数字n为3,则输出应为;
const output = [5, 7, 2, 5, 12, 6, 43];
示例
以下是代码-
const arr = [12, 6, 43, 5, 7, 2, 5];
const num = 5;
const rotateByOne = arr => {
for(let i = 0; i < arr.length-1; i++){
temp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = temp;
};
}
Array.prototype.rotateBy = function(n){
const { length: l } = this;
if(n >= l){
return;
};
for(let i = 0; i < n; i++){
rotateByOne(this);
};
};
arr.rotateBy(num);
console.log(arr);输出结果
这将在控制台中产生以下输出-
[ 2, 5, 12, 6, 43, 5, 7 ]
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短