邻接表和十字链表,有什么区别呢?他们的应用场合是什么呢?
邻接表和十字链表,有什么区别呢?他们的应用场合是什么呢?
不知道你有没有坐过长途汽车,车站一般都会贴出这么一个里程表
邻接表其实和它是一样的(因为里程表a->b 和b->a的里程一样,所以只画一半,一个三角形就可以了,邻接表则是完整的一个二维数组)
也就是行是始发站,列是终点站,值是里程(或者用0 1表示是否有通路,或者表示权重)
十字链表是邻接表的链式存储的形式,解决的问题是,当一个图上节点很多,但是边很少的时候,用数组存储,大部分都是0,很浪费
于是用一个数据结构(5元组)存储 当前的行(相当于始发站id)、列(终点站id)、权重(里程)、下一个行(还是这个始发站可以到的下一个终点站id)、下一个列(也到这个终点站的下一个始发站)。
邻接表就跟烤串的金针菇一样 的结构 十字链表就像一张网 个人理解 邻接表除了第一个棍有关联 其他“金针菇”彼此没有关联 网有关联
你要的答案:https://blog.csdn.net/misayap/article/details/79293334