Rumah >pembangunan bahagian belakang >C++ >Perwakilan tatasusunan timbunan binari
Pokok binari lengkap yang mematuhi sifat pengisihan timbunan dipanggil timbunan binari.
Berdasarkan cara timbunan binari diisih, ia boleh dibahagikan kepada dua jenis:
Timbunan minimum ialah timbunan di mana nilai nod lebih besar daripada atau sama dengan nilai nod induknya. Nod akar bagi timbunan min adalah yang terkecil.
Timbunan maks ialah timbunan yang nilai nod adalah kurang daripada atau sama dengan nilai nod induknya. Nod akar timbunan maks adalah yang terbesar.
Nilai timbunan binari biasanya diwakili sebagai array. Perwakilan tatasusunan bagi timbunan binari adalah seperti berikut:
Indeks unsur akar ialah 0.
Jika i ialah indeks nod dalam tatasusunan, maka indeks nod lain yang berkaitan dengan nod itu adalah seperti berikut:
Anak kiri: (2*i)+1
Anak kanan : (2*i )+2
Nod induk: (i-1)/2
Menggunakan peraturan perwakilan tatasusunan di atas, kita boleh mewakili timbunan sebagai tatasusunan:
1 | 4 | 7 | 8 | 9 | 11 | 12 |
Contoh:
Perwakilan tatasusunan:
14 | 10 | 8 |
Contoh:
Perwakilan susunan:
115 | 1 |
Atas ialah kandungan terperinci Perwakilan tatasusunan timbunan binari. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!