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

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

數據結構實驗之二叉樹二:遍歷二叉樹

2019-11-10 18:09:18
字體:
來源:轉載
供稿:網友

PRoblem Description

已知二叉樹的一個按先序遍歷輸入的字符序列,如abc,,de,g,,f,,, (其中,表示空結點)。請建立二叉樹并按中序和后序的方式遍歷該二叉樹。 Input

連續輸入多組數據,每組數據輸入一個長度小于50個字符的字符串。 Output

每組輸入數據對應輸出2行: 第1行輸出中序遍歷序列; 第2行輸出后序遍歷序列。

Example Input

abc,,de,g,,f,,,

Example Output

cbegdfacgefdba

Hint

Author xam

#include <iostream>#include <stdio.h>#include <stdlib.h>#include <string.h>using namespace std;typedef struct node{ char a; node *left; node *right;}Node;int top=0;struct node *creat(char *p)//建樹方法{ Node *root=NULL; if(top<strlen(p)) { if(p[top]!=',') { root=(Node *)malloc(sizeof(Node)); root->left=NULL; root->right=NULL; root->a=p[top++]; root->left=creat(p); root->right=creat(p); } else { top++; } } return root;}void zhong(Node *root)//中序遍歷,先序和后序類似{ if(root) { zhong(root->left); printf("%c", root->a); zhong(root->right); }}void hou(Node *root){ if(root) { hou(root->left); hou(root->right); printf("%c", root->a); }}int main(){ char p[60]; while(~scanf("%s", p)) { Node *root; top=0; root = creat(p); zhong(root); printf("/n"); hou(root); printf("/n"); }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 康定县| 德州市| 武穴市| 香格里拉县| 石泉县| 伊吾县| 乐清市| 昆明市| 平山县| 沾化县| 义乌市| 咸宁市| 永川市| 德江县| 苏尼特右旗| 响水县| 昆明市| 吴川市| 达尔| 芦溪县| 扎兰屯市| 苏尼特右旗| 兴隆县| 广东省| 福建省| 新乐市| 芜湖市| 汝南县| 乐东| 六安市| 临泽县| 灵丘县| 淮北市| 平原县| 密山市| 安多县| 门头沟区| 南部县| 始兴县| 黄龙县| 丽水市|