33
Algoritmusok és adatszerkezetek I. 1. előadás

Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Algoritmusok és adatszerkezetek I.

1. előadás

Page 2: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Típusok osztályozása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Összetettség (strukturáltság) szempontjából:

elemi (vagy skalár, vagy strukturálatlan)

összetett (más szóval strukturált)

Strukturálási módok

Keresztszorzat AxB: rekord (pl. dátum=(év,hó,nap)) vagy

függvény (pl. szövegként 2021.02.10.)

Unió AB (pl. hónap – szöveg: április, szám: 4, római szám: IV)

Sokaság sok azonos típusú elem

2/33

Page 3: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Típusok osztályozása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Sokaság osztályozása rákövetkezés szerint

Halmaz: nincs rákövetkezési reláció

Sorozat: minden elemet egy elem követ és egy előz meg

(kivéve esetleg a két szélső elemet)

Hierarchikus struktúra: minden elemet egy előz meg, de több

is követhet

Hálós struktúra: minden elemet több előzhet meg és több is

követhet

3/33

Page 4: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Típusok osztályozása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Sokaságtípusok megjelenése

Halmaz: halmaz, multihalmaz, intervallumhalmaz, táblázat,

diszjunkt halmazfelbontás

Sorozat: tömb, verem, sor, prioritási sor, lista

Hierarchikus struktúra: bináris fa, nem bináris fa, kérdezőfa,

szegmensfa

Hálós struktúra: irányítatlan gráf, irányított gráf, háló

4/33

Page 5: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozattípus műveletei

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Üres Létrehoz, elemek nélkül.

Létrehoz Létrehoz, struktúrától függő elemekkel.

Üres?/Teli? Ellenőrzi, hogy van-e eleme / bővíthető lenne-e?

Elemszám Hány eleme van?

Beilleszt Struktúrától függő helyre új elemet illeszt.

Kihagy Struktúrától függő helyről elemet hagy el.

Első/Utolsó Első / utolsó elemének értékét adja.

Elejéről/Végéről Kiveszi a sorozat első / utolsó elemét.

Elsőutániak/Utolsóelőttiek Eldobja az első / utolsó elemet.

5/33

Page 6: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozattípus műveletei

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Elejére/Végére A sorozat első eleme elé / utolsó eleme mögé

illeszt egy újat.

Érték Struktúrától függően meghatározott elemének

értékét adja vissza.

Módosít Struktúrától függően meghatározott elemének új

értéket ad.

Elsőre/Utolsóra A struktúra első / utolsó elem lesz az aktuális (ha

volt ilyen).

Előzőre/Következőre A struktúra aktuális eleme (ha volt ilyen) legyen

az eddigit megelőző / követő.

6/33

Page 7: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozattípusok fajtái

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Típuskonstrukció Tevékenységhalmaz

Tömb (Létrehoz, Elemszám,) Érték, Módosít

Lista Üres, Üres?, Teli?, Beilleszt, Kihagy, Elsőre, Utolsóra, Előzőre,

Következőre, Érték, Módosít

Sor Üres, Üres?, Teli?, Elemszám, Első, Elejéről, Végére

Prioritási sor Üres, Üres?, Teli?, Elemszám, Első, Elejéről, …

Verem Üres, Üres?, Teli?, Elemszám, Első, Elejére, Elejéről

InputSzekvenciálisFile Üres?, Elejéről

OutputSzekvenciálisFile Üres, Végére

DirektFile Üres, Létrehoz, Üres?, Teli?, Elemszám, Érték, Módosít …

AsszociatívFile Üres, Üres?, Teli?, Elemszám, Érték, Módosít …

7/33

Page 8: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozat típusok ábrázolása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Folytonos, szekvenciális ábrázolás: az elemeket a

memóriában a kezdőcímtől szorosan egymásután helyezzük el, a

tárolás sorrendje megegyezik a logikai sorrenddel.

Az elemek címe számítható.

Memória … … …

Elemsorszám: 1. 2. 3. … N.

kezdőcím

8/33

Page 9: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozat típusok ábrázolása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Láncolt ábrázolás: az elemek a memóriában folytonos

területen helyezkednek el, a rákövetkezést index-szel biztosítjuk

(statikus láncolás).

9/33

Page 10: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozat típusok ábrázolása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Láncolt ábrázolás: az elemek a memóriában nem folytonos

területen helyezkednek el, a rákövetkezést mutatóval biztosítjuk

(dinamikus láncolás).

10/33

Page 11: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozat típusok ábrázolása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Blokkolt ábrázolás: ötvözi az előbbi kettőt úgy, hogy láncot

hoz létre az elemek egy adott számú elemet tartalmazó

tömbjéből.

11/33

Page 12: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozat típusok ábrázolása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Folytonos, szekvenciális ábrázolás:

hatékony helykihasználás

címkiszámítás (címfüggvény) lehetősége

struktúra módosítás (beszúrás, törlés) munkaigényes

előre rögzített memóriaméret

12/33

Memória … … …

Elemsorszám: 1. 2. 3. … N.

kezdőcím

Page 13: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozat típusok ábrázolása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Statikus láncolás:

folytonos területen helyezkedik el

helyfoglalás növekedés (minden elem mellé kell egy index)

címkiszámítás nem lehetséges – adott elem eléréséhez a

struktúra egy részét be kell járni

struktúra módosítás (beszúrás, törlés) gyors

előre rögzített maximális memóriaméret

13/33

Page 14: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Sorozat típusok ábrázolása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Dinamikus láncolás:

memóriában tetszőleges helyeken lehet

helyfoglalás növekedés (minden elem mellé kell egy mutató)

címkiszámítás nem lehetséges – adott elem eléréséhez a

struktúra egy részét be kell járni

struktúra módosítás (beszúrás, törlés) gyors

az igényeknek megfelelően változó memóriaméret

14/33

Page 15: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Ábrázolások megvalósítása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Folytonos, szekvenciális ábrázolás:

tömb

elemek sorozata, elem=(hossz,értékek) vagy

(értékek,végjel)

Láncolás:

első elem, elem=(érték, következő elem)

Blokkolás:

első blokk, blokk=(elemszám, tömb, következő blokk)

15/33

Page 16: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Ábrázolások megvalósítása

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Statikus láncolás, blokkolás:

első, következő megadása = tömbindex

Dinamikus láncolás, blokkolás:

első, következő megadása = mutató

Megjegyzés: nem kizárt, hogy egy elemhez több következő is

tartozzon – kétirányú láncolás, hierarchikus és hálós típusok!

16/33

Page 17: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Emlékeztető:

vektor, mátrix, ...

mátrixok ábrázolása (sorfolytonos, oszlopfolytonos)

Címfüggvények: indexhez memóriacímet rendelnek

cím(A,i)=kezdőcím(A)+(i-1)*elemméret

cím(B,i,j)=kezdőcím(B)+((i-1)*sorok száma+j-1)*elemméret

sorfolytonos ábrázolás esetén

17/33

Page 18: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Emlékeztető:

speciális vektorok (számtani sorozat, mértani sorozat)

Speciális mátrixok (diagonális mátrix, alsó és felső

háromszög mátrix, szimmetrikus mátrix, Toeplitz-mátrix,

Hankel-mátrix, Vandermonde mátrix)abc

xy

0 00 0 00 0 0

0 0 00 00 0

. . .

. . .

. . .

. . .

. . .

. . .

??

???

??

876

543

21

tt0...

ttt...

0tt...

...ttt0

...0ttt

...0tt a b dc a b de c a b

a b dc a be c a

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

d b ad b a ca c e

d b ab a ca c e

n,n

n,33,3

n,23,22,2

n,13,12,11,1

h0..000

......

h...h00

h...hh0

h...hhh

n,nn,3n,2n,1

n,33,33,23,1

n,23,22,22,1

n,13,12,11,1

h...hhh

......

h...hhh

h...hhh

h...hhh

18/33

Page 19: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött vektor elemfelsorolással:

→ db,(i,x),(j,y),...

azaz a felesleges elemeket nem tároljuk, az értékes elemek

indexét és értékét felsoroljuk (mint egy halmaz elemeit).

Indexelés: keresés programozási tétel.

x y

i j

19/33

Page 20: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Érték(X,i):

j:=1

Ciklus amíg j≤X.db és i≠X.t(j).index

j:=j+1

Ciklus vége

Ha j≤X.db akkor Érték:=X.t(j).érték

különben Érték:=nemdef

Függvény vége.

Megjegyzés: hatékonyabb lenne index

szerint növekvő sorrendben.20/33

x y

i j

Page 21: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Módosít(X,i,e):

j:=1

Ciklus amíg j≤X.db és i≠X.t(j).index

j:=j+1

Ciklus vége

Ha j≤X.db akkor X.t(j).érték:=e

különben X.db:=X.db+1

X.t(X.db).érték:=e

X.t(X.db).index:=i

Eljárás vége.

Megjegyzés: a beszúrás lassúbb lenne in-

dex szerint növekvő sorrendben.21/33

x y

i j

Page 22: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

ElemTöröl(X,i):

j:=1

Ciklus amíg j≤X.db és i≠X.t(j).index

j:=j+1

Ciklus vége

Ha j≤X.db akkor X.t(j):=X.t(X.db)

X.db:=X.db-1

Eljárás vége.

Megjegyzés: a törlés lassúbb lenne index

szerint növekvő sorrendben.22/33

x y

i j

Page 23: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött mátrix elemfelsorolással:

→ db,(i,j,x),(k,l,y),(p,q,z)...

azaz a felesleges elemeket nem tároljuk, az értékes

elemek indexét és értékét felsoroljuk (halmazként).

Indexelés: keresés programozási tétel.

x

z

y

23/33

Page 24: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Problémák:

rendezett vektor esetén lassú az új elem beillesztés

a mátrix elemeit hogyan rendezzük?

sorfolytonosan?

oszlopfolytonosan?

bármelyik esetén lassú a másik irány szerinti elérés

Megoldás: láncolás

24/33

Page 25: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött vektor statikus láncolással

Elem=(index,érték,következő)

Érték(X,i):

s:=X.első

Ciklus amíg s≠sehova és X.elem(s).index<i

s:=X.elem(s).következő

Ciklus vége

Ha s≠sehova és X.elem(s).index=i

akkor Érték:=X.elem(s).érték

Eljárás vége.

Megjegyzés: index szerint növekvő sor-

rendben.

25/33

Page 26: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött vektor dinamikus láncolással

Elem=(index,érték,következő)

Érték(X,i):

s:=X.első

Ciklus amíg s≠sehova és tartalom(s).index<i

s:=tartalom(s).következő

Ciklus vége

Ha s≠sehova és tartalom(s).index=i

akkor Érték:=tartalom(s).érték

Eljárás vége.

Megjegyzés: index szerint növekvő sor-

rendben.

26/33

Page 27: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött vektor dinamikus láncolássalMódosít(X,i,e):

előző:=sehova; s:=X.első

Ciklus amíg s≠sehova és tartalom(s).index<i

előző:=s; s:=tartalom(s).következő

Ciklus vége

Ha s≠sehova és tartalom(s).index=i

akkor tartalom(s).érték:=e

különben Lefoglal(p); Betesz(X,p,előző,i,e)

Eljárás vége.

27/33

Page 28: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött vektor dinamikus láncolássalBetesz(X,p,előző,i,e):

tartalom(p).index:=i; tartalom(p).érték:=e;

Ha előző=sehova

akkor tartalom(p).következő:=X.első

X.első:=p

különben tartalom(p).következő:=

tartalom(előző).következő

tartalom(előző).következő:=p

Eljárás vége.

28/33

Page 29: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött mátrix dinamikus láncolással

sor(i) – az i-edik sor első

eleme

oszlop(j) – a j-edik oszlop

első eleme

elem=(érték, kövsor,

kövoszlop)

1.1. 2.2. …… j.j. …… M.M.

N.N.

……

i.i.

……

2.2.

1.1. 1,j 1,M

i,1 i,j i,M

N,1

2,2

oszlopFejoszlopFej

sorFejsorFej

29/33

Page 30: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött mátrix dinamikus láncolássalÉrték(X,i,j):

s:=X.sor(i)

Ciklus amíg s≠sehova és tartalom(s).oszlop<j

s:=tartalom(s).kövoszlop

Ciklus vége

Ha s≠sehova és tartalom(s).oszlop=j

akkor Érték:=tartalom(s).érték

különben Érték:=Nemdef

Eljárás vége.

Megjegyzés: elég a sorban megkeresni, ha

ott van, akkor az oszlopban is van.

30/33

1.1. 2.2. …… j.j. …… M.M.

N.N.

……

i.i.

……

2.2.

1.1. 1,j 1,M

i,1 i,j i,M

N,1

2,2

oszlopFejoszlopFej

sorFejsorFej

Page 31: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött mátrix dinamikus láncolássalMódosít(X,i,j,e):

Sorkeres(es,van,s,i,j)

Ha van akkor tartalom(s).érték:=e

különben Oszlopkiválaszt(eo,i,j)

Lefoglal(p); tartalom(p).érték:=e

tartalom(p).sor:=i

tartalom(p).oszlop:=j

Sorba(X,es,p,i); Oszlopba(X,eo,p,j)

Eljárás vége.

Megjegyzés: ha a sorban megtaláltuk, mó-

dosítható, ha nem, akkor keressük az osz-

lopban is és mindkettőbe betesszük.31/33

1.1. 2.2. …… j.j. …… M.M.

N.N.

……

i.i.

……

2.2.

1.1. 1,j 1,M

i,1 i,j i,M

N,1

2,2

oszlopFejoszlopFej

sorFejsorFej

Page 32: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Hézagosan kitöltött tömbök

Szlávi Péter, Zsakó László: Adatszerkezetek I. 2021. 02. 10.

14:11

Hézagosan kitöltött mátrix dinamikus láncolássalSorba(X,előző,p,i):

Ha előző=sehova

akkor tartalom(p).kövoszlop:=X.sor(i).első

X.sor(i).első:=p

különben tartalom(p).kövoszlop:=

tartalom(előző).kövoszlop

tartalom(előző).kövoszlop:=p

Eljárás vége.

32/33

Page 33: Algoritmusok és adatszerkezetek I. 1. előadásalg1.elte.hu/downloads/eloadas/Eloadas1.pdf · 2020. 2. 12. · Típusok osztályozása Szlávi Péter, Zsakó László: Adatszerkezetek

Algoritmusok és adatszerkezetek I.

1. előadás vége