我一直在尝试在C++中实现一个二叉搜索树以获得乐趣。我的 问题是我遇到了插入功能问题。以下是我到目前为止:二叉树实现C++
class TreeNode{
public:
int data;
TreeNode *left;
TreeNode *right;
void Insert(int value, TreeNode *x);
void TreeNode::Print(TreeNode *x);
TreeNode();
};
TreeNode::TreeNode(){
left = NULL;
right = NULL;
}
。
void TreeNode::Insert(int value, TreeNode *x){
if(x->left == NULL && x->right == NULL){
TreeNode *tree = new TreeNode();
tree->datavalue;
x->left = tree;
}
else if(x->left == NULL && x->right != NULL){
TreeNode *tree = new TreeNode();
tree->data = value;
x->left = tree;
}
else if(x->left != NULL && x->right == NULL){
TreeNode *tree = new TreeNode();
tree->data = value;
x->right = tree;
}
else if(x->left != NULL && x->right != NULL){
??????
}
}
你到底有什么问题? – h4ck3d
你想让任何组织到你的树吗?看起来你只是将元素放在任何地方,而不是使用数学逻辑为它找到一个位置。 – JustinDanielson
我想你想实现一个二进制搜索树。 – h4ck3d