alg.doc

(20 KB) Pobierz
Poprzednik węzła drzewa binarnego

Poprzednik węzła drzewa binarnego. Dokladnie powiem ci  w czym problem: z drzewka, które on narysowal: jeśli wg jego definicji szukałabym poprzednika wezla, które posiada lewego syna to dla trojki poprzednikiem musiałaby być 1 a jest przeciez dwojka.

 

Czyli ja jego algorytm zmodyfikowałam i zapisałam tak:

 

Function PoprzednikWezla( var wartość: wezel): wezel

Var Biezacy Wezel: wezel

     Begin

       BiezacyWezel:=wartość

       IF BiezacyWezelMaLewegoSyna=false

       THEN BiezacyWezel:=OjciecBiezacegoWezla

            Begin

                 IF BieżacyWezel<wartość

                PoprzdnikWezla:=BieżacyWezel

               ELSE PoprzednikWezla:=OjciecBieżacegoWezla

             End

        ELSE BiezacyWezel:=LewySyn

             Begin

               IF BiezacyWezel=NIL

               THEN  PoprzednikWezla:=BiezacyWezel

                ELSE repeat

                BieżacyWezel:=PrawySyn

                UNTIL BiezacyWezel=NIL

             End

     End

          

 

...
Zgłoś jeśli naruszono regulamin