第23832题 单选题
补全C++实现二叉搜索树插入结点的代码

二叉搜索树的每个结点的左子树的所有结点值都小于该结点值,右子树的所有结点值都大于该结点值。以下C++代码用于根据给定的无重复整数数组构造对应的二叉搜索树,请补全insert函数中的空缺代码:

// 定义二叉树的结点结构
struct tree_node {
    int val;
    tree_node* left;
    tree_node* right;

    tree_node(int x) : val(x), left(nullptr), right(nullptr) {}
};

// 插入结点到二叉搜索树中
tree_node* insert(tree_node* root, int val) {
    if (root == nullptr) {
        return new tree_node(val);
    }

    // 在此处填入代码

    return root;
}

// 根据给定数组构造二叉搜索树
tree_node* constructBST(const int arr[], int size) {
    tree_node* root = nullptr;
    for (int i = 0; i < size; ++i) {
        root = insert(root, arr[i]);
    }
    return root;
}
{{ option.label }}
子题{{ index + 1 }} {{ child.type_label }}
{{ option.label }}
✓ 正确 ◐ 部分正确 ✗ 错误
程序运行统计
暂无判题统计
提交{{ questionInfo.stats ? questionInfo.stats.submit_count : 0 }}次 正确率{{ statsAccuracy }}%
答案解析