国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)之二叉樹的建立與遍歷

2019-11-08 18:41:10
字體:
供稿:網(wǎng)友

PRoblem Description

已知一個(gè)按先序序列輸入的字符序列,如abc,,de,g,,f,,,(其中逗號(hào)表示空節(jié)點(diǎn))。請(qǐng)建立二叉樹并按中序和后序方式遍歷二叉樹,最后求出葉子節(jié)點(diǎn)個(gè)數(shù)和二叉樹深度。

Input

輸入一個(gè)長(zhǎng)度小于50個(gè)字符的字符串。 Output

輸出共有4行: 第1行輸出中序遍歷序列; 第2行輸出后序遍歷序列; 第3行輸出葉子節(jié)點(diǎn)個(gè)數(shù); 第4行輸出二叉樹深度。 Example Input

abc,,de,g,,f,,, Example Output

cbegdfa cgefdba 3 5 Hint

Author

ma6174

#include<stdio.h>#include<string.h>#include<stdlib.h>char a[55];int top;struct node{ int data; struct node *l, *r;};struct node *creat()//建樹{ struct node *root; top++; if(a[top] != ',') { root = (struct node*) malloc(sizeof(struct node)); root -> data = a[top]; root -> l = creat(); root -> r = creat(); } else root = NULL; return root;};void zhongxu(struct node *root){ if(root) { zhongxu(root -> l); printf("%c", root -> data); zhongxu(root -> r); }}void houxu(struct node *root){ if(root) { houxu(root -> l); houxu(root -> r); printf("%c", root -> data); }}int yezi(struct node *root){ if(root == NULL) return 0; if(root -> l == NULL && root -> r == NULL) return 1; else return yezi(root -> l) + yezi(root -> r);}int deep(struct node *root){ int d1, d2; if(root) { d1 = deep(root -> l) + 1; d2 = deep(root -> r) + 1; return d1 > d2? d1 : d2; } return 0;}int main(){ top = -1;//啊啊啊啊啊,掉了這一步浪費(fèi)了我好長(zhǎng)時(shí)間?。?! scanf("%s", a); struct node *root; root = creat(); zhongxu(root); printf("/n"); houxu(root); printf("/n"); printf("%d/n", yezi(root)); printf("%d/n", deep(root)); return 0;}
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 玉龙| 晋宁县| 三亚市| 肃南| 庐江县| 长春市| 彝良县| 东台市| 福贡县| 同德县| 景泰县| 汉川市| 舟山市| 洪泽县| 亳州市| 忻州市| 林甸县| 普洱| 闽侯县| 镇原县| 湖北省| 遂川县| 石台县| 雷波县| 饶河县| 马龙县| 温宿县| 沁水县| 石楼县| 莲花县| 英德市| 玛多县| 玉溪市| 长宁县| 理塘县| 四川省| 安陆市| 佛坪县| 安丘市| 白朗县| 达拉特旗|