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)//对每个一维数组进行初始化
    }
相关推荐
Boop_wu16 分钟前
[Java 算法] 动态规划(4)
数据结构·算法·leetcode
旖-旎18 分钟前
分治(计算右侧小于当前元素的个数)(7)
c++·学习·算法·leetcode·排序算法·归并排序
We་ct1 小时前
LeetCode 137. 只出现一次的数字 II:从基础到最优的两种解法详解
前端·数据结构·算法·leetcode·typescript·位运算
旖-旎1 小时前
分治(交易逆序对的总数)(6)
c++·算法·leetcode·排序算法·归并排序
北顾笙9801 小时前
day14-数据结构力扣
数据结构·算法·leetcode
田梓燊2 小时前
leetcode 239
数据结构·算法·leetcode
XWalnut11 小时前
LeetCode刷题 day4
算法·leetcode·职场和发展
旖-旎12 小时前
分治(库存管理|||)(4)
c++·算法·leetcode·排序算法·快速选择算法
Kk.080214 小时前
力扣 LCR 084.全排列||
算法·leetcode·职场和发展
旖-旎15 小时前
分治(快速选择算法)(3)
c++·算法·leetcode·排序算法·快速选择