JavaScript中的方阵旋转
我们需要编写一个JavaScript函数,该函数采用n*n阶数组(方阵)。该功能应将数组旋转90度(顺时针)。条件是我们必须就地执行此操作(不分配任何额外的数组)。
例如-
如果输入数组是-
const arr = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ];
然后旋转的数组应该看起来像-
const output = [ [7, 4, 1], [8, 5, 2], [9, 6, 3], ];
示例
以下是代码-
const arr = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
const rotateArray = (arr = []) => {
for (let rowIndex = 0; rowIndex < arr.length; rowIndex += 1) {
for (let columnIndex = rowIndex + 1; columnIndex < arr.length;
columnIndex += 1) {
[
arr[columnIndex][rowIndex],
arr[rowIndex][columnIndex],
] = [
arr[rowIndex][columnIndex],
arr[columnIndex][rowIndex],
];
}
}
for (let rowIndex = 0; rowIndex < arr.length; rowIndex += 1) {
for (let columnIndex = 0; columnIndex < arr.length / 2;
columnIndex += 1) {
[
arr[rowIndex][arr.length - columnIndex - 1],
arr[rowIndex][columnIndex],
] = [
arr[rowIndex][columnIndex],
arr[rowIndex][arr.length - columnIndex - 1],
];
}
}
};
rotateArray(arr);
console.log(arr);输出结果
以下是控制台上的输出-
[ [ 7, 4, 1 ], [ 8, 5, 2 ], [ 9, 6, 3 ] ]
热门推荐
10 最新高考祝福语 简短
11 小学同学简短祝福语
12 冬泳祝福语简短8字
13 同事生日祝福语简短独特
14 女儿蛋糕祝福语简短精辟
15 朋友聚会结束祝福语简短
16 别人的新年祝福语简短
17 祝福语签名简短霸气女生
18 朋友出国旅游祝福语简短