麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Java > 正文

二叉樹實現(xiàn)源代碼

2019-09-06 23:33:34
字體:
供稿:網(wǎng)友

                    二叉樹實現(xiàn)源代碼如下:

#include <conio.h>
#include <stdio.h>
#include <stdlib.h>

#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
#define OVERFLOW -2
typedef int status;

typedef struct BiNode
{
   char Data;
   struct BiNode* lChild;
   struct BiNode* rChild;
}BiNode,*pBiNode;

status CreateTree(BiNode** pTree);
status PreOrderTraval(BiNode* pTree);
status Visit(char Data);
status Display(BiNode* pTree,int Level);
status Clear(BiNode* pTree);

BiNode *pRoot=NULL;

main()
{
   clrscr();
   CreateTree(&pRoot);

   printf("PreOrder:");
   PreOrderTraval(pRoot);
   printf("");

   printf("InOrder:");
   InOrderTraval(pRoot);
   printf("");

   printf("PostOrder:");
   PostOrderTraval(pRoot);
   printf("");

   printf("ShowLeaves:");
   ShowLeaves(pRoot);
   printf("-----------------------");
   printf("");

   Display(pRoot,0);

   printf("");
   printf("Deleting Tree:");
   DelTree(pRoot);
   printf("BiTree Deleted.");

   getch();
}
status CreateTree(BiNode** pTree) /*Input Example: abd##e##cf##g##*/
{
   char ch;
   scanf("%c",&ch);
   if(ch==‘#‘)
   {
/t(*pTree)=NULL;
   }
   else
   {
/tif(!((*pTree)=(BiNode*)malloc(sizeof(BiNode))))
/t{
/t    exit(OVERFLOW);
/t}
/t(*pTree)->Data=ch;
/tCreateTree(&((*pTree)->lChild));
/tCreateTree(&((*pTree)->rChild));
   }
return OK;
}
status PreOrderTraval(BiNode* pTree)
{
   if(pTree)
   {
/tif(Visit(pTree->Data))
/t{
/t    if(PreOrderTraval(pTree->lChild))
/t    {
/t/tif(PreOrderTraval(pTree->rChild))
/t/t{
/t/t    return OK;
/t/t}
/t    }
/t}
/treturn ERROR;
   }
   else
   {
/treturn OK;
   }
}
status InOrderTraval(BiNode* pTree)
{
   if(pTree)
   {
/tif(InOrderTraval(pTree->lChild))
/t{
/t    if(Visit(pTree->Data))
/t    {
/t/tif(InOrderTraval(pTree->rChild))
/t/t{
/t/t    return OK;
/t/t}
/t    }
/t    return ERROR;
/t}
/treturn ERROR;
   }
   else
   {
/treturn OK;
   }
}
status PostOrderTraval(BiNode* pTree)
{
   if(pTree)
   {
/tif(PostOrderTraval(pTree->lChild))
/t{
/t    if(PostOrderTraval(pTree->rChild))
/t    {
/t/tif(Visit(pTree->Data))
/t/t{
/t/t    return OK;
/t/t}
/t/treturn ERROR;
/t    }
/t}
/treturn ERROR;
   }
   else
   {
/treturn OK;
   }
}
status Visit(char Data)
{
   printf("%c",Data);
   return OK;
}
status Display(BiNode* pTree,int Level)
{
   int i;
   if(pTree==NULL) return;
   Display(pTree->lChild,Level+1);
   for(i=0;i<Level-1;i++)
   {
/tprintf(" ");
   }
   if(Level>=1)
   {
/tprintf("--");
   }
   printf("%c",pTree->Data);
   Display(pTree->rChild,Level+1);
}
status ShowLeaves(BiNode* pTree)
{
   if(pTree)
   {
/tif(ShowLeaves(pTree->lChild))
/t{
/t    if(ShowLeaves(pTree->rChild))
/t    {
/t/tif((pTree->lChild==NULL)&&(pTree->rChild==NULL))
/t/t{
/t/t    if(!Visit(pTree->Data))
/t/t    {
/t/t/treturn ERROR;
/t/t    }
/t/t}
/t/treturn OK;
/t    }
/t}
/treturn ERROR;
   }
   else
   {
/treturn OK;
   }
}
status DelTree(BiNode* pTree)
{
   if(pTree)
   {
/tif(DelTree(pTree->lChild))
/t{
/t    if(DelTree(pTree->rChild))
/t    {
/t/tprintf("Deleting %c",pTree->Data);
/t/tfree((void*)pTree);
/t/treturn OK;
/t    }
/t}
/treturn ERROR;
   }
   else
   {
/treturn OK;
   }
}
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 成人免费观看av | 国产成人自拍av | 黄网站色成年大片免费高 | 国产一有一级毛片视频 | 久久久久久久久久久一区 | 九草在线 | 青草av.久久免费一区 | gril hd| 香蕉国产在线视频 | 久久久久久久一区二区 | 成人在线视频黄色 | 狠狠干天天操 | 日韩欧美高清一区 | 看免费黄色大片 | 成人做爰s片免费看网站 | 国产噜噜噜噜久久久久久久久 | 国产精品久久久久久久久久久久午夜 | 亚州精品国产 | 99激情视频 | 在线a毛片 | 国产精品久久久久久久久久久久午夜 | 久久精品国产亚洲7777 | 久草中文网 | av在线成人| 精品国产中文字幕 | 亚洲一区 国产精品 | 国产成人高清成人av片在线看 | 国产交换3p国产精品 | 久久99久久99精品 | 国内精品伊人久久 | 九九视频精品在线 | 久久久久久久亚洲视频 | 黄色高清av| 国产剧情在线观看一区二区 | 91短视频在线 | 成人午夜视频免费看 | 精品视频在线免费看 | 免费黄色欧美视频 | 久久免费视频一区二区三区 | 午夜视频在线 | 国产美女视频一区二区三区 |