树的静态写法

这里的树是指一般意义上的树,即子结点个数不限且子结点没有先后次序的树,而不是上文讨论的二叉树。

struct node{

        typename data;    //数据域

        int child[maxn];     //指针域,存放所有子结点的下标              当结点数目过多时,使用vector<int>child

}Node[maxn];                //结点数组,maxn为结点上限个数





v0:Node[0].child[0] = 1, Node[0].child[1] = 2, Node[0].child[2] = 3;

v1:Node[1].child[0] = 4, Node[1].child[1] = 5;

v2:Node[2] has no children, so Node[2].child.size() == 0;

v3:Node[3].child[0] = 6;

v4:Node[4] has no children, so Node[4].child.size() == 0;

v5:Node[5] has no children, so Node[5].child.size() == 0;

v6:Node[6] has no children, so Node[6].child.size() == 0;


这棵树的先序遍历序列就是v0 v1 v4 v5 v2 v3 v6



这棵树的层序遍历序列就是v0 v1 v2 v3 v4 v5 v6


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容