導航:首頁 > 數據分析 > 如何輸入二叉樹數據

如何輸入二叉樹數據

發布時間:2023-08-15 16:11:04

㈠ 二叉樹程序運行時怎麼輸入

那就要看你的程序是如何的了。我是初學者,我有一個程序如下:
#include
#include
struct
tree
{
char
d;
struct
tree
*lc,*rc;
};
struct
tree*
create()
{struct
tree*p;
char
c;
cin>>c;
if(c=='#')
return
0;
p=new
struct
tree;
p->d=c;
p->lc=create();
p->rc=create();
return
p;
}
void
first(struct
tree*q)
{
if(!q)
return;
cout<
d<<",";
first(q->lc);
first(q->rc);
}
void
last(struct
tree*q)
{
if(!q)
return;
last(q->lc);
last(q->rc);
cout<
d<<",";
}
void
mid(struct
tree*q)
{
if(!q)
return;
mid(q->lc);
cout<
d<<",";
mid(q->rc);
}
void
main()
{
struct
tree*head;
cout<<"請輸入二叉樹:"<
評論
0
0
0
載入更多

㈡ 怎麼輸入一個二叉樹,樹中每個節點存放了一個整數值

先定義二叉樹的存儲結構,不同的定義方法相應有不同的存儲結構的建立演算法。
如二叉樹採用二叉鏈表存儲結構,如下:
#define OK 1
#define OVERFLOW -1

typedef int TElemType;
typedef int Status;

typedef struct BiTNode {
TElemType data;
struct BiTNode *lchild ;//左孩子指針
struct BiTNode *rchild; // 右孩子指針
} BiTNode;//二叉樹結點
typedef BiTNode *BiTree; //二叉樹

int ch;

按給定的帶 0 標記的先序序列定義一棵二叉樹,如下:
Status CreateBiTree(BiTree &T)
{//按先序序列建兒叉樹
scanf("%d",&ch);
if (ch= =0 ) T = NULL;
else {
if (!(T = (BiTNode *)malloc(sizeof(BiTNode))))
exit(OVERFLOW);
T->data = ch; // 生成根結點
CreateBiTree(T->lchild); // 構造左子樹
CreateBiTree(T->rchild); // 構造右子樹
}
return OK;
} // CreateBiTree
例如,輸入先序序列如下:1 2 0 3 0 0 4 0 0
建立的二叉樹如下:
1
/ \
2 4
\
3

閱讀全文

與如何輸入二叉樹數據相關的資料

熱點內容
銷售培訓word 瀏覽:112
win10錯誤2系統找不到指定文件 瀏覽:327
U盤啟動載入資源文件失敗 瀏覽:459
怎樣把ug的pdf文件導入cad 瀏覽:148
c盤文件刪不了怎麼辦 瀏覽:248
win7無線網路禁用 瀏覽:455
如何把電腦文件夾圖片放置在一起 瀏覽:702
如何對訪談法進行數據分析 瀏覽:388
國土三調文件用什麼軟體什麼打開 瀏覽:651
數控銑床編程特點是什麼 瀏覽:119
飛鴿傳輸一次能傳多少文件 瀏覽:488
手機照片許可權怎麼設置密碼 瀏覽:341
es文件瀏覽器怎麼隱藏 瀏覽:649
刪除的文件為什麼恢復 瀏覽:314
血緣詛咒怎麼升級 瀏覽:604
文件分享到微信怎麼操作 瀏覽:393
tmx文件trados 瀏覽:704
大數據與會計選課怎麼選 瀏覽:684
網路的不穩定因素有哪些 瀏覽:950
獵豹瀏覽器javascript 瀏覽:723

友情鏈接