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

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

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

2019-11-08 03:07:57
字體:
供稿:網(wǎng)友

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

Time Limit: 1000MS Memory Limit: 65536KBSubmit Statistic

PRoblem Description

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

Input

 輸入一個(gè)長度小于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
#include <stdio.h>#include <stdlib.h>int i,cnt;typedef struct node{    char data;    struct node *l,*r;}node;node *create(char *str){    node *root;    if(str[i]==','){        i++;        root = NULL;    }    else{        root = (node *)malloc(sizeof(struct node));        root->data = str[i++];        root->l = create(str);        root->r = create(str);    }    return root;}void *inOrder(node *root){    if(root){        inOrder(root->l);        printf("%c",root->data);        inOrder(root->r);    }}void *postOrder(node *root){    if(root){        postOrder(root->l);        postOrder(root->r);        printf("%c",root->data);    }}int *leavesPrint(node *root){    if(root){        if(root->l==NULL&&root->r==NULL)            cnt++;        leavesPrint(root->l);        leavesPrint(root->r);    }    return cnt;}int *depth(node *root){    int d = 1;    if(root){        int dl = depth(root->l);        int dr = depth(root->r);        d = dl>dr?dl+1:dr+1;    }    else        return 0;    return d;}int main(){    char str[100];    cnt = 0;    scanf("%s",str);    node *root = create(str);    inOrder(root);    printf("/n");    postOrder(root);    printf("/n");    printf("%d/n",leavesPrint(root));    printf("%d/n",depth(root));    return 0;}這題就是各種方法的集合罷了,其他基本的掌握了,這個(gè)也不難,說實(shí)話二叉樹在這個(gè)程度上并不算難。
這次沒用MarkDown編輯器,感覺怪不舒服的,如果用的話,這個(gè)題目描述的字體格式和顏色又都不行了,真是麻煩啊,哪位高人知道如何處理的????

上一篇:color

下一篇:BZOJ 2287 DP+容斥

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 河源市| 三原县| 武清区| 新沂市| 姚安县| 赫章县| 灵石县| 岫岩| 东台市| 正镶白旗| 多伦县| 兴安盟| 正镶白旗| 丰宁| 遂宁市| 嘉兴市| 太仆寺旗| 米易县| 郑州市| 新乐市| 哈尔滨市| 广西| 通河县| 谷城县| 布尔津县| 弋阳县| 平江县| 金平| 安龙县| 新安县| 新泰市| 竹溪县| 安吉县| 清河县| 张北县| 绥宁县| 大足县| 华蓥市| 西华县| 余江县| 台山市|