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

首頁 > 學院 > 開發設計 > 正文

數據結構實驗之二叉樹七:葉子問題(二叉樹+隊列)

2019-11-11 01:53:54
字體:
來源:轉載
供稿:網友

sdut原題鏈接

數據結構實驗之二叉樹七:葉子問題 Time Limit: 1000MS Memory Limit: 65536KB

PRoblem Description 已知一個按先序輸入的字符序列,如abd,,eg,,,cf,,,(其中,表示空結點)。請建立該二叉樹并按從上到下從左到右的順序輸出該二叉樹的所有葉子結點。

Input 輸入數據有多行,每一行是一個長度小于50個字符的字符串。

Output 按從上到下從左到右的順序輸出二叉樹的葉子結點。

Example Input abd,,eg,,,cf,,, xnl,,i,,u,,

Example Output dfg uli

Hint 二叉樹+隊列 Author xam

以下為accepted代碼

#include <stdio.h>#include <string.h>#include <stdlib.h>typedef struct node{ char date; struct node *left; struct node *right;}BinTree;BinTree *root;BinTree *link[54];char s[54];int flag, pu, po;BinTree * creat(){ BinTree *root; if(s[flag++] == ',') root = NULL; else { root = (BinTree *)malloc(sizeof(BinTree)); root->date = s[flag-1]; root->left = creat(); root->right = creat(); } return root;}void put_leave(BinTree *root){ if(root) { pu = po = 0; link[pu++] = root; while(pu > po) { if(!link[po]->left && !link[po]->right) { printf("%c", link[po]->date); } if(link[po]->left) { link[pu++] = link[po]->left; } if(link[po]->right) { link[pu++] = link[po]->right; } po++; } }}int main(){ while(scanf("%s", s) != EOF) { flag = 0; root = creat(); put_leave(root); printf("/n"); } return 0;}/***************************************************User name:Result: AcceptedTake time: 0msTake Memory: 116KBSubmit time: 2017-02-07 16:09:24****************************************************/
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新津县| 安龙县| 中山市| 石嘴山市| 乌兰浩特市| 顺义区| 赣榆县| 凌海市| 黄骅市| 亚东县| 杭锦旗| 齐河县| 南郑县| 盐源县| 临沧市| 大英县| 固始县| 虎林市| 额敏县| 深圳市| 环江| 平原县| 彭州市| 永胜县| 吐鲁番市| 麻江县| 徐闻县| 屯留县| 泗洪县| 涟水县| 梅州市| 天门市| 石首市| 宜州市| 昭通市| 临颍县| 久治县| 双鸭山市| 金阳县| 新竹县| 韶山市|