Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Buongiorno a tutti. Sono uno studente di Ing. dell'Informazione e tra 3 settimane circa ho l'esame di Fondamenti. Sto sbattendo da un pò di giorni su questa traccia d'esame:
1- Esercizio in C che ho posta qui-> http://www.pierotofy.it/pages/extras/forum/viewtopic.php?i ...=
2- Scrivere il codice C++ per la realizzazione dei una classe che implementa un heap di massimo 127 elementi float. Prevedere costruttore che crea heap vuoto, costruttore che riceve array di float e numero di float e crea l'heap con gli stessi elementi dell'array, funzione di inserimento ed estrazione, distruttore, costruttore di copia ed eventuali funzioni necessarie al funzionamento.
cout<<"Errore allocazione in costruttore copie!\n";
num_el=0;
return;
}
num_el=s.num_el;
for(int i=0;i<num_el;i++)p_el[i]=s.p_el[i];
}
int main()
{
int num, i;
float*ptr;
cout<<"num. el:";
cin>>num;
if(num>0 && num<=127){
ptr =newfloat[num];
cout<<endl;
for(i=0; i<num; i++){
cout<<"ins. el:";
cin>>ptr[i];
cout<<endl;
}
heap H(num, ptr);
system("pause");
return0;
}
L'ho scritta inserendo materiale reperito qua e la, ma i concetti non mi sono chiari, mi servirebbe una spiegazione coscienziosa vista l'imminenza dell'esame.
Vi ringrazio di cuore e vi auguro buone feste
Uno heap si comporta esattamente come un binary tree, con la differenza che è più flessibile (il binary tree impone che il nodo child a sinistra sia più piccolo del nodo parent e quello di destra più grande, mentre uno heap impone semplicemente che entrambi i nodi child siano più piccoli - o più grandi dipendentemente dal fatto che tu stia implementando un max heap o un min heap - del nodo parent).
il costruttore copia è il costruttore che viene chiamato quando si crea una nuova istanza copiando da un'altra istanza. In questo caso bisogna copiare i buffer interni di memoria dinamica in modo da non incorrere in problemi dopo la deallocazione del primo oggetto.