-3
請幫我用這個C++代碼(我是初學者:P) 它的bug ... plz告訴我哪裏出錯了! 注:我已經使用COUT調試......二進制搜索樹C++
#include<iostream>
using namespace std;
struct node
{
int val;
node* left;
node* right;
}*root;
void insrt(node* a,int n)
{
if(a==NULL)
{
a=new node;
a->val=n;
a->left=NULL;
a->right=NULL;
cout<<"_";
}
else if(a->val>n)
{
cout<<"<";
insrt(a->left,n);
}
else
{
cout<<">";
insrt(a->right,n);
}
}
int main()
{
int n,x,i;
cout<<"Enter the size: ";
cin>>n;
root=NULL;
for(i=0;i<n;i++)
{
cin>>x;
insrt(root,x);
}
return 0;
}
它編譯和運行,甚至但輸出我得到的是:
Enter the size: 3
1
_2
_3
_
但它應該是:
Enter the size: 3
1
_2
>_3
>>_
謝謝,我明白你的觀點。 – Shahbaz23 2014-10-01 15:55:58
@ Shahbaz23,不客氣。很高興我能幫上忙。 – 2014-10-01 15:59:31