二叉树c++
时间: 2023-07-01 15:18:35 浏览: 103
基于C++语言的二叉树
二叉树是一种树形结构,其中每个节点最多有两个子节点,通常称为左子节点和右子节点。在C++中,我们可以使用指针来实现二叉树。
首先,我们需要定义二叉树节点的结构体,例如:
```
struct TreeNode {
int val;
TreeNode* left;
TreeNode* right;
TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
};
```
这里使用了一个构造函数,用于方便创建节点时同时给节点的值赋初值。
接下来,我们可以定义二叉树的一些基本操作,例如插入节点、删除节点、遍历等等。这里以插入节点为例:
```
void insertNode(TreeNode*& root, int val) {
if (!root) {
root = new TreeNode(val);
return;
}
if (val < root->val) {
insertNode(root->left, val);
} else {
insertNode(root->right, val);
}
}
```
这里使用了递归的方式,如果当前节点为空,则创建一个新节点;如果插入的值小于当前节点的值,则在左子树中插入;否则在右子树中插入。
其他操作的实现方式也类似,可以根据需求进行编写。
阅读全文