Bootstrap

树和图的存储

 树和图的存储方式是用链表来实现。

  一般较常使用的单链表和邻接矩阵

 由于目前只学了单链表就只叙述下单链表的实现

单链表:(这里使用数组模拟的方式)

单链表实现树和图的储存即开一个几个数组:e[i](储存当前节点的数值)h[i](储存每个节点的数值的头指针)ne[i](储存每个节点指向的下一个节点)

1 void add_to_head(int a)//头结点插入一个a
2 {
3     e[idx]=a;//使当前节点的值为a 
4     ne[idx]=head;//使当前节点指向头结点指向的下标 
5     head=idx++;//头结点指向该节点并且节点数增加 
6 }

每个节点的链表里的存储循序我们并不关心,因此我们只需在头指针的后面插入即可。

例如

单链表的储存即

1 h[1]->5->3->2->-1;
2 h[2]->8->-1;
3 h[3]->7->6->-1;
;