golang出现panic: runtime error: index out of range [0] with length 0(创建n阶矩阵时)

本打算创建一个n阶的二维数组:以下两种情况都试了但都会出现如图片中的错误

Go 复制代码
ans := make([][]int, n)//①
var ans [][]int //②

原因是初始化问题:

虽然创建了切片 ans,但是没有初始化其内部的切片。这会导致在尝试访问 ans[i][j] 等位置时出现 panic。

正确的初始化方法:

Go 复制代码
// 初始化矩阵
//主要是n阶二维数组实际上是由n个一维数组组成
    ans := make([][]int, n)//只声明了n个一维数组
    for i := range ans {
        ans[i] = make([]int, n)//对每个一维数组进行初始化
    }
相关推荐
GGBondlctrl1 小时前
【leetcode】递归,回溯思想 + 巧妙解法-解决“N皇后”,以及“解数独”题目
算法·leetcode·n皇后·有效的数独·解数独·映射思想·数学思想
枫景Maple12 小时前
LeetCode 2297. 跳跃游戏 VIII(中等)
算法·leetcode
緈福的街口15 小时前
【leetcode】3. 无重复字符的最长子串
算法·leetcode·职场和发展
小刘不想改BUG19 小时前
LeetCode 70 爬楼梯(Java)
java·算法·leetcode
sz66cm21 小时前
LeetCode刷题 -- 542. 01矩阵 基于 DFS 更新优化的多源最短路径实现
leetcode·矩阵·深度优先
爱coding的橙子1 天前
每日算法刷题Day24 6.6:leetcode二分答案2道题,用时1h(下次计时20min没写出来直接看题解,节省时间)
java·算法·leetcode
慢慢慢时光1 天前
leetcode sql50题
算法·leetcode·职场和发展
pay顿1 天前
力扣LeetBook数组和字符串--二维数组
算法·leetcode