定义
交叉链表(Orthogonal List )是有向图的另一个链式存储结构。 可以认为该结构是有向图的邻接表和逆邻接表的组合。 通过用十字链表存储有向图,可以达到高效的访问效果。 同时,也提高了代码的可读性。
示例图
顶点结构
边缘结构(本例中忽略了每个边缘的权重)画图过程
1、先绘制顶点和该节点发行的所有边缘节点
2、填写各边缘节点的信息,绘制成顶点指向进入该顶点的第一个边缘节点
3、连接与终端节点相同的边缘节点
4、清空剩下的指针
类型结构{//顶点结构int data; struct sNode* firstIn; 结构节点*第一次输出; }pNode; typedef struct sNode{ //边节点结构int tailvex; int headvex; 结构节点* hlink; 结构节点* t链接; }sNode; typedef struct { pNode L[10]; int pCount; 输入计数; } * Across链接;