-1

ヒープのすべての葉を出力する必要がありますが、正しく実行したかどうかはわかりません。

例: 配列 {A,B,C,D,E,F,G,H,I,J}

                  A
              B       C
           D    E   F   G
          H I  J   

したがって、私の関数は次のように出力する必要があります: HIJFG

これは正しいです?

void leafdisplay(node *p)
{
    if(p->left ==NULL && p->right ==NULL)
    {
        cout<<p->info;  //  display the node
    }
    else if (p->left==NULL&&p->right!=NULL)
        leafdisplay(p->right);
    else if(p->left!=NULL&&p->right==NULL)
        leafdisplay(p->left);
    else if(p->left!=NULL&&p->right!=NULL)
        leafdisplay(p->left);       
    leafdisplay(p->right);
}
4

1 に答える 1