-->
当前位置:首页 > 题库

函数题:根据带虚结点的先序序列创建二叉树

Luz3年前 (2022-11-12)题库757
要求实现函数,根据带虚结点(以*表示)的先序序列创建二叉树。二叉树采用二叉链表存储,结点结构如下:


struct BiTNode { // 结点结构
char data; // 结点数据域
BiTNode *lchild, *rchild; // 左、右孩子指针
};


### 函数接口定义:
c++
BiTNode *CreateBiTree(string &s);

其中引用参数 s是存放带虚结点的先序序列的字符串。

### 裁判测试程序样例:
c++
#include<iostream>
#include<string>
using namespace std;

struct BiTNode {
char data;
BiTNode *lchild, *rchild;
};

void PostOrder(BiTNode * T); // 后序遍历
BiTNode *CreateBiTree(string &s); // 创建二叉树,s存放带虚结点的先序遍历序列

// 根据带虚结点的先序序列创建二叉树并输出后序遍历结果
int main() {
string s;
while(cin>>s) {
BiTNode* root=CreateBiTree(s);
PostOrder(root);
cout<<endl;
}

return 0;
}


### 输入样例:

in
HDA**C*B**GF*E***
-+a**xb**-c**d**/e**f**


### 输出样例:

out
ABCDEFGH
abcd-x+ef/-






答案:若无答案欢迎评论