#include<iostream.h>
struct Node{
int num;
Node *LChild;
Node *RChild;
Node *Father;
};
int Init(Node *a)
{
cout<<"Plea Input The Num"<<endl;
cin>>a->num;
if(a->num==0)
{
if(a==a->Father->LChild)
{
a->Father->LChild=NULL;
}
if(a==a->Father->RChild)
{
a->Father->RChild=NULL;
}
return 0;
}
else
{
a->LChild=new Node;
a->RChild=new Node;
a->LChild->Father=a;
a->RChild->Father=a;
Init(a->LChild);
Init(a->RChild);
}
}
int Delete(Node *a,int Temp)
{
if(a->num==Temp)
{
if(a->Father->LChild==a)
{
cout<<"Delete Success"<<endl;
a->Father->LChild=NULL;
return 0;
}
if(a->Father->RChild==a)
{
cout<<"Delete Success"<<endl;
a->Father->RChild=NU
C++实现二叉树(初始化,删除,遍历)
最新推荐文章于 2022-07-02 21:32:33 发布