C語言版--二叉樹

#include "head.h"//這裏是你的常量頭文件
#include "iostream.h"

typedef char TElemType;
typedef struct BiTNode{
  TElemType data;
  struct BiTNode *lchild,*rchild;
}BiTNode,*BiTree;

Status CreateBiTree(BiTree &T)
{
  TElemType ch;
  cout<<"輸入你想要的數據:";
  cin>>ch;
  if(ch=='@' ) T=NULL;
  else
  {
    T=new BiTNode;
 if(!T) return ERROR;
 T->data=ch;
 CreateBiTree(T->lchild);
 CreateBiTree(T->rchild);
  }
  return OK;
}
Status PreOrderTraverse(BiTree T)
{
 if(T)
 {
   cout<<T->data;
   PreOrderTraverse(T->lchild);
   PreOrderTraverse(T->rchild);
 }
 return OK;
}
Status InOrderTraverse(BiTree T)
{
  if(T)
  {
    InOrderTraverse(T->lchild);
 cout<<T->data;
 InOrderTraverse(T->rchild);
  }
  return OK;
}
Status PostOrderTraverse(BiTree T)
{
  if(T)
  {
    PostOrderTraverse(T->lchild);
 PostOrderTraverse(T->rchild);
 cout<<T->data;
 }
  return OK;
}
int BiTreeDepth(BiTree T)
{
  int m=0;


  return m;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章