树的建立

1.代码

  BTree CreateBTree(string str,int i){
        int len;
        BTree bt;
        bt=new TNode;
        len=str.size();
        if(i>len-1 || i<=0) return NULL;
        if(str[i] == '#') return NULL;
        bt->data = str[i];
        bt->lchild = CreateBTree(str,2*i); 
        bt->rchild = CreateBTree(str,2*i+1); 	
        return bt;
  }
  void PreOrder(BTree bt){
   if(bt){
	printf("%c ",bt->data);
	PreOrder(bt->lchild);
	PreOrder(bt->rchild);
   }
  }
  void InOrder(BTree bt){
      if(bt){
	  InOrder(bt->lchild);
	  printf("%c ",bt->data);
	  InOrder(bt->rchild);
      }
  }
  void PostOrder(BTree bt){
   if(bt){
        PostOrder(bt->lchild);
	PostOrder(bt->rchild);
	printf("%c ",bt->data);
   }
 }

2.运行截图

posted on 2019-04-26 22:28  来颗橘子  阅读(184)  评论(0编辑  收藏  举报