En bunke er en træstruktur , der passer til en særlig bunke regel. Den bunke reglen hedder, at hver node i træet har en lavere værdi end dets moderselskab node . Knudepunkter er steder i træet , som indeholder data . En bunke gemmer den største værdi node i roden node i træet , mens den laveste værdi noder opholde sig på det laveste niveau i træet. En bunke kan blive korrupt , når en anden proces ændrer dataene, så det ikke længere klæber til den bunke reglen . I C + +, kan du oprette og ødelægge dynger hjælp af basale funktioner. Ting du skal
C + + Integrated Development Environment eller IDE, såsom Eclipse CDT
C + + compiler, sådan GCC
Vis Flere Instruktioner
1
Load C + + IDE ved at klikke på programmets ikon . Når den åbner , skal du vælge "File /New /Project" og vælg " C + + projekt" at oprette en ny C + + projekt. En tom kildekode fil vises i teksteditoren del af IDE
2
Importer " Vector " og " algoritme" biblioteker ved at skrive følgende i toppen af kildekoden filen: . < Br >
# importere # import
3 Erklær en hovedfunktion. Vigtigste funktioner er programmet indgange - hvor programmet begynder udførelse. De krøllede parenteser , der følger en hovedfunktion danne en kode blok : De indkapsle hele kildekoden for din vigtigste funktion. Skriv den vigtigste funktion erklæringen og kode blok som denne : Hej
int main () {}
4
Skriv kildekoden findes i de følgende trin inde i krøllede parenteser i den primære funktion .
5.
Opret en vektor data container. Vektorer er sekventielle beholdere , der automatisk kan ændre størrelse sig selv, når data tilføjes til dem. Hvis du vil oprette en ny vektor , skriver følgende erklæring : Hej
vector v ();
6 Tilføj data til vektor ved hjælp af " push_back "-funktionen . For eksempel for at tilføje tallene 1 til 4 til vektor skriver følgende linjer kode :
v.push_back (1), v.push_back (2), v.push_back (3) v. push_back (4),
7
Omarrangere vektoren for at danne en bunke. En bunke er en træstruktur , hvor de " børn " af et knudepunkt er lavere i værdi , og derfor den øverste knude af en bunke er knudepunktet med den højeste numeriske værdi - 4 , i dette eksempel . Du kan anvende den make_heap kommando som denne , der passerer i starten og slutningen af vektoren til at omfatte alle dens elementer : Hej
make_heap ( v.begin () , v.end ());
< br > 8
Fjern alle elementer fra en bunke , hvis du har mistanke om , at det er blevet beskadiget. Du kan gøre dette ved hjælp af " pop_heap " funktion som denne : Hej
pop_heap ( v.begin () , v.end ());