一天一个数据结构知识——十字链表、邻接多重表
十字链表是有向图的一种存储方式,可以有效解决结点的入度难以计算的问题。为了既能存储发出的弧,也能存储指向结点的弧,因此在存储结点时除了结点的数据外还要存储两个指针,一个指向该结点作为弧头的第一条弧,一个指向该节点作为弧尾的第一条弧。

因此对于弧的存储结构也要有所不同,首先要存储弧的弧头和弧尾,同时还要存储两个指针,一个指向以该节点为弧头的下一条弧,一个指向以该节点为弧尾的下一条弧。
邻接多重表则是无向图的的一种存储方式,其也能有效避免邻接表带来的边存储冗余和结点和边删除修改的复杂度较高的问题。不同于邻接表每个边存储的是指向的结点编号和指向下一个节点的指针,邻接多重表的边存储的是边两个顶点的编号和两个指针,两个指针分别指向依附于不同两个顶点的下一条边。
