let n = 3;
let m = 4;
let flag = true;
let num = 1;
let workSpace = [];
let outArr = [];
for (let i = 0; i < n; i++) {
workSpace[i] = [];
}
for (let i = 0; i < n; i++) {
for (let j = 0; j < m; j++) {
workSpace[i][j] = num++;
}
}
console.log(workSpace);
function check(flag, n, m) {
if (n == 0) {
return;
} else if (m == 0) {
} else if (flag) {
for (let i = 0; i < n; i++) {
outArr.push(workSpace[i][0]);
workSpace[i].shift();
if (i === n - 1) {
for (let j = 0; j < m - 1; j++) {
outArr.push(workSpace[i][j]);
}
}
}
workSpace.pop();
check(!flag, n - 1, m - 1);
} else {
for (let i = n - 1; i >= 0; i--) {
outArr.push(workSpace[i][m - 1]);
workSpace[i].pop();
if (i === 0) {
for (let j = m - 2; j >= 0; j--) {
outArr.push(workSpace[i][j]);
}
}
}
workSpace.shift();
check(!flag, n - 1, m - 1);
}
}
check(flag, n, m);
console.log(outArr); 这个第一题,啥原因啊,