在C++中,二叉树是树的一种特殊形式,其中每个节点最多有两个子节点,通常称为左子节点和右子节点。我们可以通过结构或类来实现二叉树及其相关操作。
以下是一个简单的二叉树实现,包括创建、查找、插入、删除以及三种基本的遍历方式:前序遍历、中序遍历和后序遍历。
首先,我们需要定义一个二叉树节点:
struct TreeNode {
int val;
TreeNode *left;
TreeNode *right;
TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
};
我们可以通过递归或者循环的方式创建二叉树,这里以递归为例:
TreeNode* createTree() {
// 假设我们使用某种方式读取或输入节点值,这里简化处理
int val;
cout << "Enter value (-1 for NULL): ";
cin >> val;
if (val == -1) return nullptr;
TreeNode* root = new TreeNode(val);
cout << "Enter left child of " << val << ": ";
root->left = createTree();
cout << "Enter right child of " << val <

最低0.47元/天 解锁文章
1279

被折叠的 条评论
为什么被折叠?



