写出先序为ABDGCEFH的二叉树函数代码c++采用二链列表作为二叉树的存储结构
时间: 2023-12-03 18:43:03 浏览: 57
C++实现二叉树(链式存储)
3星 · 编辑精心推荐
以下是采用二链表作为二叉树的存储结构的先序为ABDGCEFH的二叉树函数代码:
```c++
#include<iostream>
using namespace std;
struct TreeNode{
char val; // 存储节点的值
TreeNode* left; // 左子树指针
TreeNode* right; // 右子树指针
};
// 先序遍历二叉树
void preOrder(TreeNode* root){
if(root == nullptr){
return;
}
cout << root->val << " "; // 输出节点的值
preOrder(root->left); // 递归遍历左子树
preOrder(root->right); // 递归遍历右子树
}
// 构建二叉树
TreeNode* buildTree(){
char val;
cin >> val;
if(val == '#'){
return nullptr;
}
TreeNode* root = new TreeNode;
root->val = val;
root->left = buildTree(); // 递归构建左子树
root->right = buildTree(); // 递归构建右子树
return root;
}
int main(){
TreeNode* root = buildTree(); // 构建二叉树
preOrder(root); // 先序遍历二叉树
return 0;
}
```
阅读全文