我是靠谱客的博主 复杂板凳,最近开发中收集的这篇文章主要介绍二叉树的建立和三种遍历,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <assert.h>
 4 #include <string.h>
 5 typedef struct tree{
 6     int data;
 7     struct tree *pLeft;
 8     struct tree *pRight;
 9 }*pT,T;
10 pT CreateTree(){
11     int data=0;
12     pT p=NULL;
13     puts("请输入要插入的数据:");
14     scanf("%d",&data);
15     if(data==0)
16         return NULL;
17     p=(pT)malloc(sizeof(T));
18     p->data=data;
19     printf("输入%d 的左节点值:",data);
20     p->pLeft=CreateTree();
21     printf("输入%d 的右节点值:",data);
22     p->pRight=CreateTree();
23     return p;
24 }
25 void PreOrder(pT root){
26     if(root==NULL)
27         return;
28     printf("%dt",root->data);//访问根
29     PreOrder(root->pLeft);//访问左子树
30     PreOrder(root->pRight);//访问右子树
31 }
32 void InOrder(pT root){
33     if(root==NULL)
34         return;
35     if(root->pLeft!=NULL)
36         InOrder(root->pLeft);//访问左子树
37     printf("%dt",root->data);//访问根
38     if(root->pRight!=NULL)
39         InOrder(root->pRight);//访问右子树    
40 }
41 void PostOrder(pT root){
42     if(root==NULL)
43         return;
44     if(root->pLeft!=NULL)
45         PostOrder(root->pLeft);
46     if(root->pRight!=NULL)
47         PostOrder(root->pRight);
48     printf("%dt",root->data);
49 }
50 int main(){
51     pT root;
52     root=CreateTree();
53     PreOrder(root);
54     putchar('n');
55     InOrder(root);
56     putchar('n');
57     PostOrder(root);
58     return 0;
59 }

输入:

1
2
4
0
7
0
0
5
0
0
3
0
6
0
0

输出:

请输入要插入的数据:
输入1 的左节点值:请输入要插入的数据:
输入2 的左节点值:请输入要插入的数据:
输入4 的左节点值:请输入要插入的数据:
输入4 的右节点值:请输入要插入的数据:
输入7 的左节点值:请输入要插入的数据:
输入7 的右节点值:请输入要插入的数据:
输入2 的右节点值:请输入要插入的数据:
输入5 的左节点值:请输入要插入的数据:
输入5 的右节点值:请输入要插入的数据:
输入1 的右节点值:请输入要插入的数据:
输入3 的左节点值:请输入要插入的数据:
输入3 的右节点值:请输入要插入的数据:
输入6 的左节点值:请输入要插入的数据:
输入6 的右节点值:请输入要插入的数据:
1	2	4	7	5	3	6	
4	7	2	5	1	3	6	
7	4	5	2	6	3	1	

通过测试:

http://ideone.com/Qo2djs

转载于:https://www.cnblogs.com/OneL1fe/p/6531520.html

最后

以上就是复杂板凳为你收集整理的二叉树的建立和三种遍历的全部内容,希望文章能够帮你解决二叉树的建立和三种遍历所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部