首页 > 其他 > 详细

技术学习博2

时间:2020-05-10 17:50:40      阅读:38      评论:0      收藏:0      [点我收藏+]

补个档,第⑨周学的树

难的还是递归,绕来绕去( ´_ゝ` )

 1 //树的定义(结点定义)
 2 typedef char DataType;
 3 typedef struct Node {
 4      DataType  data; 
 5      struct  Node  *lchild; 
 6      struct  Node  *rchild;                   
 7 } BiNode,*BiTree;
 8 
 9 //创建树的二叉链表(递归)
10 void CreateBiTree(BiTree *bt)
11 {
12     char ch;
13     ch = getchar();
14     if(ch==.) *bt=NULL;
15     else 
16     {
17         *bt= (BiNode *)malloc(sizeof(BiNode)); 
18         (*bt)->data=ch;
19          CreateBiTree(&((*bt)->lchild)); //生成左子树
20          CreateBiTree(&((*bt)->rchild)); //生成右子树
21     }
22 }
23 
24 //输出二叉树的元素(先序)
25 void Print(BiTree bt)
26 {
27     if(bt==NULL)    
28         return;
29     else
30     {
31         printf("%c ", bt->data);
32         Print(bt->lchild);
33         Print(bt->rchild);
34     }
35 
36 }
37 
38 //主函数
39 void main()
40 {
41     BiTree T;
42     CreateBiTree(&T);
43     Print(T);
44     
45 }

 

技术学习博2

原文:https://www.cnblogs.com/hhw-/p/12863462.html

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