首页 > 其他 > 详细

二叉树的创建,遍历完整代码

时间:2018-08-22 19:27:04      阅读:320      评论:0      收藏:0      [点我收藏+]
 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 
 4 typedef struct TreeNode{
 5     int value;
 6     struct TreeNode* Left;
 7     struct TreeNode* Right;
 8 }TreeNode;
 9 
10 void printTree(TreeNode* T, int depth);
11 
12 TreeNode *CreatTree()
13 {
14     TreeNode * T = (TreeNode*)malloc(sizeof(TreeNode));
15     int val;
16     scanf_s("%d", &val);
17     if (val == 0)
18         return NULL;
19     T->value = val;
20     T->Left = T->Right = NULL;
21     T->Left = CreatTree();
22     T->Right = CreatTree();
23     
24     return T;
25     
26 }
27 
28 void InOrderTraversal(TreeNode* T, int depth)
29 {
30     if (T)
31     {
32         InOrderTraversal(T->Left, depth + 1);
33         printTree(T, depth);
34         InOrderTraversal(T->Right, depth + 1);
35     }
36 }
37 
38 void printTree(TreeNode* T, int depth)
39 {
40     while (depth--)
41         printf("  ");
42     printf("%d\n", T->value);
43 }
44 
45 int main()
46 {
47     TreeNode *T ;
48     T = CreatTree();
49     InOrderTraversal(T, 0);
50 
51     return 0;
52 }

 

二叉树的创建,遍历完整代码

原文:https://www.cnblogs.com/hi3254014978/p/9519833.html

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