arbori binari vector TATA

Se citeste un arbore cu n varfuri dat prin vectorul TATA.
1) Sa se afiseze muchiile arborelui
2) Sa se construiasca si sa se afiseze matricea de adiacenta a arborelui.

noduri1vector_tata1

Observatie: vectorul TATA  precizeaza pentru fiecare varf i, nodul TATA[i] care reprezinta parintele sau

Pentru arborele din imagine vectorul TATA este: 0,1,2,1.

#include<iostream.h>
int n, t[20], a[20][20];void afis()
{ int i,j;
  for(i=1;i<=n;i++)
    { for(j=1;j<=n;j++)
     cout<<a[i][j]<<” “;
     cout<<endl;
    }
}void main()
{ int i;
  cout<<“nr de noduri: “;cin>>n;
  cout<<“dati vectorul tata “<<endl;
  for(i=1;i<=n;i++)
  {
  cout<<“t[“<<i<<“]=”;
  cin>>t[i];
  }
  cout<<“muchiile sunt: “<<endl;
  for(i=1;i<=n;i++)
    if(t[i]!=0)
      { cout<<“[“<<t[i]<<“,”<<i<<“] “;
    a[i][t[i]]=a[t[i]][i]=1;
      }
  cout<<endl;
  cout<<“matricea de adiacenta este: “<<endl;
  afis();
}

Leave a Reply