关于邻接表建图的问题

来源:2-9 图的基本表示的比较

慕无忌7304720

2019-11-10

bobo老师请问在使用邻接表建图时,在构造方法里 adj = new LinkedList[V]; for(int i = 0; i < V; i ++) adj[i] = new LinkedList();自己写的时候少了这一段代码。就会报空指针异常的错误。debug很多次还是没有理解为什么会出现这样的问题。劳烦您解答一下,谢谢。

写回答

1回答

liuyubobobo

2019-11-10

我是不是没有理解你的问题?


adj = new LinkedList[V]; 是给 adj 开空间,adj 是一个包含有 V 个元素的数组。其中,每一个元素是一个指向 LinkedList 的引用。但是,每一个引用具体指向的内存还需要开空间。所以需要再有一次循环,给每一个 adj[i] 开空间。


尝试自己写一个 Student 类。然后,现在想做一个  Student[] 的数组,应该怎样做?首先应该给数组开空间,之后,要给每个数组元素开一个指向 Student 的空间。


继续加油!:)

0
0

玩转算法系列--图论精讲(Java版)

30+小时系统学习,bobo带你克服被图论支配的恐惧

1599 学习 · 330 问题

查看课程