- 基于顺序表的左子/右兄弟结点表礻法
1、树的存储结构一般有父结点表示法(双亲表示法一般是顺序表),子结点表示法(链表+顺序表)左子/右兄弟结点表示法(链表+順序表);
2、在计算机科学中,二叉树是每个结点最多有两个子树的树结构通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)(来源于);
3、左子结点/右兄弟结点表示法本质上是用二叉树来替换树,使用这种方法能把任意树替换为二叉树如下图:
4、结点M的深度就是从根結点到M的路径长度。数的高度是等于最深结点的深度加1.任何深度为d的结点的层数都为d根结点的层数为0,深度也为0(深度从0开始计数);
6、左儿子右兄弟结点表示法的中序遍历经查阅部分资料尚未找到正确方法若有大牛知晓烦请告知;
7、调用遍历函数前,需要预处理详見代码;
8、以下代码仅供参考。
二、基于顺序表的左子/右兄弟结点表示法
E p,c;//父结点数据,子结点数据
cout<<"请以层序依次输入各子结点数据(以# #作为結束标志):"; cout<<"\n(数据类型为单个字符如输入A B表示父结点数据是A,有一个子结点数据是B)\n" ;