Binomska kopica/Primer zmanjšanja ključa

Iz MaFiRaWiki

< Binomska kopica(Razlika med različicami)
Različica od 10:24, 30 april 2007
AleksandraVujasin (Pogovor | prispevki)

← Prejšnja različica
Trenutna različica
AleksandraVujasin (Pogovor | prispevki)

Vrstica 10: Vrstica 10:
'''Psevdo koda:''' '''Psevdo koda:'''
- Binomial-Heap-Decrease-Key(H,x,k)+ Binomska-Kopica-Zmanjšaj-Ključ(H,x,k)
if k > ključ[x] if k > ključ[x]
napiši napaka "novi ključ je večji od zdajšnjega" napiši napaka "novi ključ je večji od zdajšnjega"
Vrstica 16: Vrstica 16:
y := x y := x
z := p[y] z := p[y]
- while z ≠ NIL and ključ[y] < ključ[z]+ while z ≠ null and ključ[y] < ključ[z]
do zamenjaj ključ[y] in ključ[z] do zamenjaj ključ[y] in ključ[z]
y := z y := z
z := p[y] z := p[y]

Trenutna različica

image:ZmanjsajKljuc1.jpg

Slika 1.1 Zmanjšali smo ključ.

image:ZmanjsajKljuc2.JPG

Slika 1.2 Ker je predhodnik večji, ju zamenjamo.

image:ZmanjsajKljuc3.JPG

Slika 1.3 Ker je predhodnik večji, ju zamenjamo.

image:ZmanjsajKljuc4.JPG

Slika 1.4 Ker je predhodnik večji, ju zamenjamo. Konec.

Psevdo koda:

Binomska-Kopica-Zmanjšaj-Ključ(H,x,k)
 if k > ključ[x]
    napiši napaka "novi ključ je večji od zdajšnjega"     
 ključ[x] := k
 y := x
 z := p[y]
 while z ≠  null and ključ[y] < ključ[z]
     do zamenjaj ključ[y] in ključ[z]         
        y := z
        z := p[y]
Osebna orodja