当前位置:   article > 正文

7-1 数据结构考题 二叉树的遍历-先序

7-1 数据结构考题 二叉树的遍历-先序

二叉链表作存储结构,建立一棵二叉树, 输出该二叉树的先序遍历序列。

二叉链表的类型描述:

  1. typedef char ElemType;
  2. typedef struct BiNode
  3. { ElemType data;
  4. struct BiNode *lchild,*rchild;
  5. }BiNode,*BiTree;

输入格式:

输入一个二叉树的先序序列,孩子为空的位置以#替代。

输出格式:

输出该二叉树的先序遍历序列。输出的遍历序列中字符间均无间隔。
具体格式参看输出样例。

对于下图中给出的二叉树:

输入样例:

ABD##FE###CG#H##I##

输出样例:

ABDFECGHI

代码实现

  1. #define OK 1
  2. #define ERROR 0
  3. #include<iostream>
  4. using namespace std;
  5. #define MAX 100
  6. typedef struct BiNode
  7. { char data;
  8. struct BiNode *l,*r;
  9. }BiNode,*B;
  10. int creat(B &t){
  11. char ch;
  12. cin>>ch;
  13. if(ch=='#') t=NULL;
  14. else{
  15. t=new BiNode;
  16. t->data=ch;
  17. creat(t->l);
  18. creat(t->r);
  19. }
  20. }
  21. int trave(B &t){
  22. if(t==NULL) return OK;
  23. else{
  24. cout<<t->data;
  25. trave(t->l);
  26. trave(t->r);
  27. }
  28. }
  29. int main(){
  30. B t;
  31. creat(t);
  32. trave(t);
  33. }


 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/663545
推荐阅读
相关标签
  

闽ICP备14008679号