二维数组 行列混淆区分 js
二维数组定义
行 row:是“横着的一整行”
列 column:是“竖着的一整列”
在 JavaScript 里访问二维数组
grid[i][j] 表示 第i行第j列的元素
let grid = [[1, 2, 3], // 第0行[4, 5, 6], // 第1行[7, 8, 9] // 第2行
];// grid[i][j] 表示 第i行第j列的元素console.log(grid[0][0]); // 输出 1
console.log(grid[1][2]); // 输出 6
console.log(grid[2][1]); // 输出 8
输入一个 n x m 的矩阵表示什么?
n = 3 表示有 3 行
m = 4 表示每一行有 4 列
数组操作
遍历
for (let i = 0; i < n; i++) { // 遍历每一行for (let j = 0; j < m; j++) { // 遍历每一列console.log(`grid[${i}][${j}] = ${grid[i][j]}`);}
}
构建
一个 n 行 m 列,初始全为 0 的数组
let n = 3; // 行数
let m = 4; // 列数let grid = Array.from({ length: n }, () => Array(m).fill(0));
从输入中读取二维数组(岛屿问题)
const input = ["3 4","1 2 3 4","5 6 7 8","9 0 1 2"
];const [n, m] = input[0].split(' ').map(Number);
const grid = input.slice(1).map(row => row.split(' ').map(Number));console.log(grid);