100 likes | 198 Views
Sor láncolt ábrázolással. Fej. akt. Az utolsó elem pointere NIL, azaz a nullpointer. Bevezetés:. Egyszerű, egyirányú, fejelem nélküli láncolt lista:. 1. Lista pointere (l vagy FEJ). 2. Az aktuális elemre mutató pointer (akt). mut. Fej. A lista egy eleme:. adat.
E N D
Fej akt Az utolsó elem pointere NIL, azaz a nullpointer Bevezetés: Egyszerű, egyirányú, fejelem nélküli láncolt lista: 1. Lista pointere (l vagy FEJ) 2. Az aktuális elemre mutató pointer (akt)
mut Fej A lista egy eleme: adat A lista elemei két részből állnak: - adat rész, amelyben a kívánt adatokat, rekordokat tároljuk - a mutató rész, amelyben a következő elem címe van tárolva
s vége eleje Sor láncolt ábrázolással: - s változó egy pointert jelent - eleje pointer mutat a sor első elemére - vége pointer mutat a sor utolsó elemére - az eleje pointert nem használjuk, mivel megegyezik az s pointerrel
Empty(s) s:=NIL vége:=NIL Üres sor létrehozása: - a lista s pointerét és a végére mutató pointert NIL-re állítja
IsEmpty(s) Return(s=NIL) IsEmpty(s) művelet: - visszatérési értéke, egy logikai érték - ha a sor üres, akkor igaz értékkel tér vissza - ha található a sorban elem, akkor hamis értékkel tér vissza
First(s) s=NIL Hiba Return(s^.adat) Első elem értékének lekérdezése: - első lépésben leellenőrzi, hogy nem-e üres a sor - ha üres, akkor hibát dob - ha nem üres, akkor vissza adja a sor első elemének értékét, amely az adat részben található - csak lekérdezi a sor első elemének értékét, de nem veszi ki azt a sorból!
In(s,p) s=NIL vége.^mut:=p s:=p vége:=p vége:=p Új elem behelyezése a sorba: - bemenő paraméterkén egy mutató kap, amely egy előre elkészített listaelemre mutat - megvizsgálja, hogy a sor üres-e - ha üres, akkor a sor pointerét és a vége pointert ráállítja a behelyezendő elemre - ha nem üres, akkor az utolsó elem mutatóját átállítja a behelyezendő elemre, majd a vége pointert az újonnan behelyezett elemre - a jobb ágon fontos a sorrend !!!
Out(s,p) s=NIL H I B A p:=s s:=s^.mut Elem kivétele a sorból: - visszatérési értéke egy mutató - vizsgálja, hogy üres-e a sor - ha üres akkor hibát dob, mivel üres sorból nem vehetünk ki elemet - ha nem üres, akkor a p pointert a sor első elemére állítja, majd a sor mutatóját a sor második elemére állítja - ha csak egyetlen elem volt a sorban, akkor a sor pointere NIL lesz - a jobb ágon fontos a sorrend !!!
Készítette: Bozó István