我在二叉树的插入操作中出错问题链接是( https://www.hackerrank.com/challenges/binary-search-tree-insertion )我的代码是:
insert(node * root, int value)
{
int x = 0;
node* r = root;
node* xx;
while(x==0)
{
while(value<r->data&&r->left!=NULL)
{
r=r->left;
}
if(value<r->data&&r->left == NULL)
{
xx->data = value;
r->left = xx;
break;
}
while(value>r->data && r->right!=NULL)
{
r = r->right;
}
if(value>r->data&& r->right == NULL)
{
xx->data = value;
r->right =xx;
break;
}
}
return root;
}
我从hackerrank获得的错误如下:
回答错了!一些可能的错误:
发布于 2016-10-15 21:01:17
首先,您需要在每次插入时分配一个新节点。
开始您的声明如下:
node* insert(node * root, int value)
{
node* xx = new node();
xx->left = NULL;
xx->right = NULL;
xx->data = value;
https://stackoverflow.com/questions/40067000
复制相似问题