0
我的BST插入代碼已通過3個測試用例,並且因其他3個測試用例而失敗,因爲測試用例已隱藏我無法弄清楚我的邏輯出錯位置。請檢查並告知我其他不同的測試用例,我的邏輯不會通過。 這裏的代碼:BST插入問題
/*
Node is defined as
typedef struct node
{
int data;
node * left;
node * right;
}node;
*/
node * insert(node * root, int value)
{ node* n;
n=root;
if(n!=NULL)
{while (true)
{ if(n->data > value && n->left!=NULL){n=n->left;}
else if(n->data < value && n->right!=NULL){n=root->right;}
else
{ node* a=new node();
a->data=value;
if(n->data > value){ n->left=a;break; }
else{ n->right=a;break; }
}
}
}
else
{node* a=new node();
a->data=value;
root=a;
}
return root;
}
阿什拉夫:該函數聲明隱含問題制定者宣佈,我不能修改它。 –
好的,我再次重寫了這個函數For you Ashish我已經準備好了數據結構 –
謝謝Ashraf,但我沒有在尋找解決方案,而是我的疑問是我的代碼沒有成功產生正確的結果,如果你能用這件事幫助我,我會非常感激你!提前致謝! –