构建二叉树的c++代码
时间: 2024-03-23 19:35:02 浏览: 70
当构建二叉树的C++代码时,可以使用以下方式:
```cpp
#include <iostream>
using namespace std;
// 定义二叉树节点结构
struct TreeNode {
int val;
TreeNode* left;
TreeNode* right;
TreeNode(int x) : val(x), left(NULL), right(NULL) {}
};
// 构建二叉树的函数
TreeNode* buildTree() {
int val;
cin >> val; // 输入当前节点的值
if (val == -1) { // 如果输入-1,表示当前节点为空
return NULL;
}
TreeNode* root = new TreeNode(val); // 创建当前节点
cout << "Enter left child of " << val << ": ";
root->left = buildTree(); // 递归构建左子树
cout << "Enter right child of " << val << ": ";
root->right = buildTree(); // 递归构建右子树
return root;
}
// 测试代码
int main() {
cout << "Enter root value: ";
TreeNode* root = buildTree(); // 构建二叉树
return 0;
}
```
以上代码实现了一个简单的二叉树构建函数`buildTree()`,通过递归的方式输入每个节点的值,并构建左右子树。在测试代码中,通过输入根节点的值来构建整个二叉树。
阅读全文