Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

3. LOGIKAI ADATSZERKEZETEK 1. Lineáris 2. Tömb 3. Lista 4. Verem (LIFO) 5. Sor (FIFO) 6. Táblázatok Összeállította: Sashalmi Tibor Forrás: Simon Gyula.

Hasonló előadás


Az előadások a következő témára: "3. LOGIKAI ADATSZERKEZETEK 1. Lineáris 2. Tömb 3. Lista 4. Verem (LIFO) 5. Sor (FIFO) 6. Táblázatok Összeállította: Sashalmi Tibor Forrás: Simon Gyula."— Előadás másolata:

1 3. LOGIKAI ADATSZERKEZETEK 1. Lineáris 2. Tömb 3. Lista 4. Verem (LIFO) 5. Sor (FIFO) 6. Táblázatok Összeállította: Sashalmi Tibor Forrás: Simon Gyula Számítástechnika középiskolásoknak

2 A programok különböző típusú adatokat dolgoznak fel. Az adattípus a következőktől függ: 1.Belső ábrázolás, - amely az adott adattípusra jellemző 2.Értékkészlet – az adott adattípusú változó milyen értékeket vehet fel. 3.Műveletek – Milyen műveleteket lehet végezni az adott típusú változón? A probléma megoldás során több adattal is dolgozunk. Ezek az adatok általában egymástól nem függetlenek, logikailag összefüggnek. Ezek az összefüggések az adatszerkezetek.

3 3.1 Lineáris adatszerkezet Ez egy általános jellegű adatszerkezet. A lineáris adatszerkezet az alábbiakkal jellemez- hető: 1.Van egy első és egy utolsó eleme 2.Az ezeken kívüli elemeknek létezik megelőzője, és rákövetkezője. 3.Az első elemnek csak rákövetkezője van, az utolsónak csak megelőzője.

4 3.2 Tömb A tömb azonos típusú adatok sorozata. A tömbök-nél a logikai szerkezetet az adatelemek egymás-hoz viszonyított elhelyezkedése adja. Így nyilván az első elem kitüntetett helyzetű, hiszen a többi elem helyét az elsőhöz viszonyíthatjuk. – Egydimenziós tömb (vektor) Egydimenziós tömb – Kétdimenziós tömbKétdimenziós tömb Léteznek még három-, négy-, stb. dimenziós tömbök is, de ezek ritkábban fordulnak elő.

5 3.3 Lista A tömbelemek tárolási módja a memóriában fix méretű és szekvenciális. A program futása közben nem változtatható. A törlés és beszúrás műveletet nehéz elvégezni. A lista adatszerkezetben az elemek sorrendje szintén jól meghatározott, de az egyes elemek a memóriában nem biztos, hogy ugyanilyen sorrendben helyezkednek el. –Egyirányú láncolt listaEgyirányú láncolt lista –Kétirányú láncolt listaKétirányú láncolt lista

6 3.4 Verem (LIFO) (1 dia) A verem egy olyan lineáris adatszerkezet, amelynek mindig csak az utolsó elemével lehet műveletet végezni. –Új adat beírása utolsó elemként –Az utolsó elem kiolvasása, egyúttal az elem törlődik Szemléletesen az utolsó elem a verem tetejére kerül. Ezt vesszük ki elöször. És ha kivesszük az utolsó elemet ( az elsőként berakott) is, akkor kiürül a verem. Ezt a feldolgozási módot hívják LIFO –nak ( Last-In-First-Out : utoljára be- először ki.

7 3.4 Verem (LIFO) A verem legfontosabb alkalmazási területe az eljáráshívás: A rútin Program B rútin „A” eljárás„B” eljárás Cím 4 Cím 11

8 3.5 Sor (FIFO) Olyan lineáris adatszerkezet, amelynek mindig a legelső elemével lehet műveletet végezni. 1.Új elem beírása utolsó elemnek. 2.A legelső elem kiolvasása, egyúttal ez az elem tölődik. Az adatokat sorba kell állítani. Ezt a feldolgozási módot FIFO - nak nevezik (First – In – First -Out: elsőként be - először ki). Tipikus alkalmazási terület a nyomtatási sor.

9 Kiválasztunk egy szögpontot, ez lesz a a fa gyökéreleme. Ezután a gyökérelemtől éleket húzunk a szomszédos szögpotokhoz, ezekből újra a velük szomszédos szögpontokhoz, stb. Azokat a fa adatszerkezeteket ahol az eágazási elemből legfeljebb két elem indul ki bináris fának nevezzük. Bináris fák esetén az adatelem három részből áll: bal mutató információ jobb mutató A fagráf egy olyan összefüggő gráf, amelyben nin- csen kör. A fa adatszerkezetben az egyes szögponto- kat összekötő élek irányítottak lesznek. 3.6 Bináris fa

10 3.7 Táblázatok A táblázat tulajdonképpen egy függvénykapcsolat össze- tartozó értékek között. Adatelem a következőképpen néz ki: Az argomentum és az érték is állhat több mezőből. A táblaelemeket általában az argumentumuk alapján szokták keresni, nevezhetjük ezt tartalom szerinti keresésnek Argomentumérték

11 Logikai adatszerkezetek VÉGE

12 A legegyszerűbb tömb típus. Az egyes elemekre egy számmal, az index segítségével hivatkozha- tunk. Az index az mutatja hogy az elem hányadik a tömb elemek között. Például turbó Pascal esetén a deklaráció formája: Var tomb : array [1…100] of integer A tömb neve Az indexek lehetséges értékei elemtípus Ennek a tömbnek a 6.eleme: tomb[6] A tömbelemek a memóriában egymás után helyezkednek el, az indexeknek megfelelően. Az, hogy mekkora helyet foglalel a tömb a memóriában, az egyrészt az elemek számától, másrészt az elemek típusátol függ Egydimenziós tömb (vektor)

13 3.2.2 Kétdimenziós tömb (1.dia) Itt az elemek egy táblázatban helyezkednek el. Pl: A 11 A 12 A 13 A 14 A 21 A 22 A 23 A 24 A 31 A 32 A 33 A 34 A 41 A 42 A 43 A 44 A 51 A 52 A 53 A 54 A kétdimenziós tömb logikailag sorokból, és oszlopokból áll. Az első index a sor sorszámát jelenti, a második szám az oszlop sorszáma. A 32 első index sorindex második index oszlopindex

14 3.2.2 Kétdimenziós tömb (2.dia) Például a Turbo Pascal – ban a deklaráció formája: var A: array [1..5, 1..4] of char; Az a A 32 – re való hivatkozás: A[3,2]. A memóriában az elemek általában sorfolytonosan helyez- kednek el. Az elemek sorrendje az előző példákon szem- léltetve: A 11 A 12 A 13 A 14 A 21 A 22 A 23 A 24 A 31 A 32 A stb.

15 3.3.1 Egyirányú láncolt lista (1.dia) A listaelemei a következő szerkezetűek: A mutató a következő elem címét tartalmazza. Az elemek összeláncolása ezeknek a mutatóknak a segítségével történik. A lista tartalmaz két speciális elemet. - Listafej - Végelem adatmutató listafej1.elemCím 23.elem0002.elemCím 3

16 3.3.1 Egyirányú láncolt lista (2.dia) Két fontos művelet a kővetkezőképpen végezhető el: –Beszúrás : Egy elem beszúrásához elegendő az előző elem mutatójának megváltoztatása. listafej1.elemCím 23.elem000 2.elemCím 3újelem Cím új listafej1.elemCím 23.elem0002.elemCím 3 - Törlés: Egy elem törléséhez is az előző elem mutatóját kell megváltoztatni. Cím 3

17 3.3.2 Kétirányú láncolt lista Ha az egyes lista elemeket még egy résszel kiegészít- jük, akkor kétirányú lán- colt listát kapunk. A lista elemek három részből áll- nak: - információs rész - előző elem címe - következő elem címe listafej 1.elemCím lf Cím 2 2.elemCím 1 Cím 3 3.elemCím 2 Cím 4 4.elemCím 3 000

18


Letölteni ppt "3. LOGIKAI ADATSZERKEZETEK 1. Lineáris 2. Tömb 3. Lista 4. Verem (LIFO) 5. Sor (FIFO) 6. Táblázatok Összeállította: Sashalmi Tibor Forrás: Simon Gyula."

Hasonló előadás


Google Hirdetések