c++二叉树建立和遍历的方法是什么

   2024-11-02 3340
核心提示:在C++中,可以通过定义一个二叉树节点的结构体来表示二叉树节点,然后通过递归的方式来建立和遍历二叉树。以下是一个示例代码:#

在C++中,可以通过定义一个二叉树节点的结构体来表示二叉树节点,然后通过递归的方式来建立和遍历二叉树。

以下是一个示例代码:

#include <iostream>struct TreeNode {    int data;    TreeNode* left;    TreeNode* right;    TreeNode(int x) : data(x), left(nullptr), right(nullptr) {}};void insert(TreeNode* &root, int data) {    if (root == nullptr) {        root = new TreeNode(data);    } else {        if (data < root->data) {            insert(root->left, data);        } else {            insert(root->right, data);        }    }}void inorderTraversal(TreeNode* root) {    if (root == nullptr) {        return;    }    inorderTraversal(root->left);    std::cout << root->data << " ";    inorderTraversal(root->right);}int main() {    TreeNode* root = nullptr;    int arr[] = {5, 3, 8, 2, 4, 7, 9};    for (int num : arr) {        insert(root, num);    }    std::cout << "Inorder traversal: ";    inorderTraversal(root);    std::cout << std::endl;    return 0;}

在上面的代码中,定义了一个二叉树节点结构体TreeNode,包含数据域data以及左右子节点指针leftright。然后通过insert函数递归地插入节点来建立二叉树,通过inorderTraversal函数进行中序遍历输出二叉树中的所有节点数据。

可以根据需要修改代码实现其他遍历方式,如前序遍历和后序遍历。

 
举报打赏
 
更多>同类网点查询
推荐图文
推荐网点查询
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号