二叉链表与孩子兄弟表示法的区别
二叉链表与孩子兄弟表示法的区别:对于一般的家谱树来说,我们可以很清楚的看出层次关系,树的层数表示代数,树的最后一层表示最后一代人,由于多叉链表法表示的不方便,因此被迫无奈采用孩子兄弟表示法。
void CSTreeCreate(CSTree &T){LinkStack S;StackInit(S);CSTree p,q=T;Sn=1;char ch=Str[Sn];while(ch && ch!=';'){if(isalnum(ch)){CSTreeInit(p);p->data=ch;if(Str[Sn-1]!=',') q->Child1=p。
typedef BiTNode *BiTree:
void initBiTree(BiTree &T)。
void createBiTree(BiTree &T)。
void preOrderTraverse(BiTree T,void (*visit)(TElemType)); //递归前序遍历。
void preOrderTraverse1(BiTree T,void (*visit)(TElemType)); //非递归前序遍历。
void inOrderTraverse(BiTree T,void (*visit)(TElemType)); //递归中序遍历。
void postOrderTraverse(BiTree T,void (*visit)(TElemType)); //递归后序遍历。
void levelOrderTraverse(BiTree T,void (*visit)(TElemType)); //层序遍历。