求二叉树结点的总数,c++代码 简单代码
时间: 2023-07-09 17:11:23 浏览: 49
下面是一个更加简单的 C++ 代码,实现了二叉树节点总数的计算:
```cpp
#include <iostream>
using namespace std;
// 定义二叉树结点
struct TreeNode {
int val;
TreeNode* left;
TreeNode* right;
TreeNode(int x) : val(x), left(NULL), right(NULL) {}
};
// 计算二叉树结点总数
int countNodes(TreeNode* root) {
if (!root) return 0;
return countNodes(root->left) + countNodes(root->right) + 1;
}
int main() {
// 构造测试二叉树
TreeNode* root = new TreeNode(1);
root->left = new TreeNode(2);
root->right = new TreeNode(3);
root->left->left = new TreeNode(4);
root->left->right = new TreeNode(5);
root->right->left = new TreeNode(6);
// 计算二叉树结点总数
int count = countNodes(root);
cout << "二叉树结点总数为:" << count << endl;
return 0;
}
```
输出结果为:
```
二叉树结点总数为:6
```