首页 > 编程语言 > 详细

数据结构与算法第10周作业——二叉树的创建和遍历算法

时间:2017-05-05 00:15:50      阅读:564      评论:0      收藏:0      [点我收藏+]

一、二叉树的创建算法(递归方式)技术分享

二、二叉树的先序、中序和后序遍历算法

#include<stdio.h>
#include<stdlib.h>
typedef struct TNode
{
struct TNode *lchild;
int data;
struct TNode *rchild;
}TNode,*BTree;
void createBiTree(BTree &T)
{
char x;
scanf("%d",&x);
if(x!=0)
{
T=(TNode *)malloc(sizeof(TNode));
T->data=x;
createBiTree(T->lchild);
createBiTree(T->rchild);
}
else
{
T=NULL;
}
}
void preOrderTraverse(BTree T)
{
if(T!=NULL)
{
printf("%d",T->data);
preOrderTraverse(T->lchild);
preOrderTraverse(T->rchild);
}
}
void InOrderTraverse(BTree T)
{
if(T!=NULL)
{
InOrderTraverse(T->lchild);
printf("%d",T->data);
InOrderTraverse(T->rchild);
}
}
void AfterTraverse(BTree T)
{
if(T!=NULL)
{
AfterTraverse(T->lchild);
AfterTraverse(T->rchild);
printf("%d",T->data);

}
}
int main()
{
BTree T;
createBiTree(T);
printf("先序遍历输出结果为:");
preOrderTraverse(T);
printf("\n中序遍历输出结果为:");
InOrderTraverse(T);
printf("\n后序遍历输出结果为:");
AfterTraverse(T);
}

数据结构与算法第10周作业——二叉树的创建和遍历算法

原文:http://www.cnblogs.com/bgd150809336/p/6810394.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!