下面代码实现一个二叉排序树的插入函数(没有相同的数值),横线处应填入()。
struct TreeNode {
int val;
TreeNode* left;
TreeNode* right;
TreeNode(int x): val(x), left(nullptr), right(nullptr) {}
};
void insert(TreeNode*& root, int key) {
if (!root) {
root = new TreeNode(key);
return;
}
____________
}
- A. ```cpp
if (key < root->val)
insert(root->left, key);
else if (key > root->val)
insert(root->right, key);
- **B.** ```cpp
if (key < root->val)
insert(root->right, key);
else if (key > root->val)
insert(root->left, key);
- C. ```cpp
insert(root->left, key);
insert(root->right, key);
- **D.** ```cpp
insert(root->right, key);
insert(root->left, key);