大家好,又见面了,我是你们的朋友全栈君。
一 概述
十字链表是有向图的一种链式存储结构,在十字链表中,对应于有向图中的每条弧有一个结点,对应于每个顶点也有一个结点。
二 十字链表
十字链表的结构分为弧结点和顶点结点,其中弧结点中有5个域,顶点结点有3个域。
弧结点的5个域:尾域和头域分别指示弧尾和弧头这两个顶点在图中的位置;链域hlink指向弧头相同的下一条弧;链域tlink指向弧尾相同的下一个条弧;info域指向该弧的相关信息。这样,弧头相同的弧在同一个链表上,弧尾相同的弧也在同一个链表上。
顶点结点中有3个域:data域存顶点相关的数据信息,如顶点名称;firstin和firstout两个域分别指向以该顶点为弧头或弧尾的第一个弧结点。
有向图的十字链表表示法中,顶点结点之间是通过顺序存储方式存储。
在十字链表中,既容易找到Vi为尾的弧,又容易找到Vi为头的弧,因而容易求得顶点的出度和入度,图的十字链表表示不是唯一的,但一个十字链表表示确定一个图。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/150321.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...