-3
我的InsertInTree
函數工作不正常,我無法找出我的問題。請建議我可以做出的更改(但我不想使用遞歸)。無法在C++中創建二進制搜索樹
它從結構和功能GetNewNode
返回與左,右指針的節點作爲NULL
取值:
public:
void InsertInTree(int piData)
{
Node*newNode = NULL;
newNode=GetNewNode(piData);
if(root==NULL)
{
root=newNode;
return;
}
Node*temp = root;
while(temp!=NULL)
{
if(newNode->data<=temp->data)
{
temp=temp->left;
}
else
{
temp=temp->right;
}
}
temp=newNode;
return;
}
bool SearchNum(int piSearch)
{
if(root==NULL)
{
return false;
}
Node*temp=root;
while(temp!=NULL)
{
if(temp->data==piSearch)
{
return true;
}
else if(piSearch<=temp->data)
{
temp=temp->left;
}
else
{
temp=temp->right;
}
}
if(temp==NULL)
{
return false;
}
else
{
return true;
}
}
和GetNewNode代碼... – 4pie0 2014-09-06 14:37:04
另外,給什麼它現在做一個例子,你有什麼期待。 (「不能正常工作」可能是很多事情,崩潰,工作,但會造成錯誤的結果)//幫助我們幫助你 – Chris 2014-09-06 14:40:22