二维数组 行列混淆区分 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);

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值