实验5 二叉树

#include <iostream.h>  
const int MaxSize=11;   
class tree{  
public:  
    void in(char b[]);  
    void P();  
    void PC();  
    void JD();  
private:  
    char a[MaxSize];             
};  
void tree::in(char b[]){  
    for(int i=0;i<MaxSize;i++)  
    a[i]=b[i];   
}   
void tree::P()
{  
    for(int i=0;i<MaxSize;i++)  
    cout<<a[i]<<" ";   
    cout<<endl;   
}   
void tree::PC()   
{  
    for(int i=1;i<MaxSize/2+1;i++)   
        cout<<a[i-1]<<"的孩子是:"<<a[2*i-1]<<"和"<<a[2*i]<<endl;   
    for(int j=2;j<=MaxSize;j++)  
        cout<<a[j-1]<<"的双亲是:"<<a[j/2-1]<<endl;  
}  
 void tree::JD()  
{  
    for(int k=MaxSize/2+1;k<=MaxSize;k++)  
        cout<<a[k-1]<<"的双亲是:"<<a[k/2-1]<<endl;  
}  
void main()  
{  
    tree T;   
    char t[11]={'A','B','C','D','E','F','G','H','I','J','K'} ;   
    T.in(t);  
    cout<<"树的层序输出:"<<endl;  
    T.P();  
    cout<<"结点的的双亲和孩子:"<<endl;  
    T.PC();  
    cout<<"该树的叶子结点信息:"<<endl;  
    T.JD();  

}   


猜你喜欢

转载自blog.csdn.net/remain_genuine/article/details/80263286
今日推荐