问题
/**
* 矩阵瘦身
* 1.
* [ [
* [0,0,1], [0,1],
* [0,1,1], => [1,1]
* [0,0,0]
* ] ]
* 2.
* [ [
* [1,1,0], [1,1,0],
* [0,1,1], => [0,1,1]
* [0,0,0]
* ] ]
*/`
我的:
reduceMatrix(data) {
let del_row = [];
let del_col = [];
for (let i1 = 0; i1 < data.length; i1++) {
let row = 0;
let col = 0;
const v1 = data[i1];
for (let i2 = 0; i2 < v1.length; i2++) {
row += data[i1][i2];
col += data[i2][i1];
}
if (col === 0) {
del_col.push(i1);
}
if (row === 0) {
del_row.push(i1);
}
}
// 删列
for (let i1 = del_col.length - 1; i1 >= 0; i1--) {
const del_index = del_col[i1];
for (let i2 = 0; i2 < data.length; i2++) {
data[i2].splice(del_index, 1);
}
}
// 删行
for (let i1 = del_row.length - 1; i1 >= 0; i1--) {
const del_index = del_row[i1];
data.splice(del_index, 1);
}
}
想要更优的方法