交换二叉树中所有节点的左右子树.doc

交换二叉树中所有节点的左右子树.doc

ID:51803346

大小:1.94 MB

页数:2页

时间:2020-03-15

交换二叉树中所有节点的左右子树.doc_第1页
交换二叉树中所有节点的左右子树.doc_第2页
资源描述:

《交换二叉树中所有节点的左右子树.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#include#definemax10typedefstructnode{chardata;nodelchild,rchild;}Bitree;BitreeB[max];BitreeCreatree(){//建立二叉树BitreeT,S;charch;intfront,rear,sign;sign=0;front=0;rear=-1;T=NULL;printf("建立二叉树:");ch=getchar();while(ch!='#'){if(ch!='@'){S=(Bitree

2、)malloc(sizeof(Bitree));S->data=ch;S->lchild=S->rchild=NULL;rear++;B[rear]=S;if(rear==front){T=S;sign++;}else{if(sign%2==1)B[front]->lchild=S;if(sign%2==0){B[front]->rchild=S;front++;}sign++;}}else{if(sign%2==0)front++;sign++;}ch=getchar();}returnT;}voidSwaplr(BitreeT){/

3、/交换左右子树if(T!=NULL){Bitreep;p=T->lchild;T->lchild=T->rchild;T->rchild=p;Swaplr(T->lchild);//递归调用Swaplr(T->rchild);}}voidvisit(BitreeT){printf("%c",T->data);}voidInorder(BitreeT){//中序遍历二叉树if(T!=NULL){Inorder(T->lchild);visit(T);Inorder(T->rchild);}}voidmain(){BitreeT;T=C

4、reatree();printf("中序遍历:");Inorder(T);Swaplr(T);printf("交换左右子树后中序遍历:");Inorder(T);}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。