1 / 33

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE ) Csíkszereda IRT- 2. kurzus

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE ) Csíkszereda IRT- 2. kurzus. 2 . El ő adás tartalma 1. Elemi adatok és adatszerkezetek (struktúrák)‏ 2. Az adatok szervezése és feldolgozása a belső memóriában 3. Az adatok szervezése és feldolgozása a külső memóriában

ayame
Download Presentation

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE ) Csíkszereda IRT- 2. kurzus

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus 2. Előadás tartalma 1. Elemi adatok és adatszerkezetek (struktúrák)‏ 2. Az adatok szervezése és feldolgozása a belső memóriában 3. Az adatok szervezése és feldolgozása a külső memóriában 4. Az adatstruktúrák kiválasztási kritériumai

  2. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus • Elemi adatok és adatstruktúrák Adat: egy modell az információk ábrazolására Elementáris adatok: skaláris, tovább nem osztható Logikai, alkalmazói nívón:<azonosító, attribútum, érték> Fizikai, gépi nívón<belső ábrázolás, egész, decimális, bináris, stb. > • azonosító:< szimbólum ,név> • attribútum <adatok tulajdonságai, típus, hossz, dinamikus vagy statikus> • Az adat értéke <valós, komplex, karaktersor, Bool érték>

  3. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda ABR 2- 2. kurzus Adatstruktúrák: Csoportosítás: • A komponensek kiválasztása szerint (direkt hozzáférésű, szekvenciális hozzáférésű)‏ • A memória típusa szerint (belső, külső)‏ • A struktúra változékonysága szerint (dinamikus, statikus)‏ Adatstruktúrákon történő műveletek Létrehozás: az adatok memorálása Lekérdezés: az adatok kiolvasása. (bejárás)‏ Aktualizálás: az adatok módosítása (beszúrás, törlés)‏ Rendezés: az adatok sorba helyezése bizonyos logikai sorrend szerint Összevonás: az adatok egyesítése Másolás: az adatok másolása

  4. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Adatszervezés: • Azonosítás, csoportosítás, a tulajdonságok leírása, gyűjtemények létrehozása • A struktúra megállapítása • Az ábrázolási módok maghatározása • A feldolgozási módok definíciója A fontosabb adattípusok: Numerikus: egész, valós, komplex stb. Logikai: boolean (igen, nem) Karakter: betűk, számok, jelek együttese Mutató: adatok melyek címeket jelentenek

  5. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus 2. Az adatok szervezése és feldolgozása a belső memóriában: Adattípúsok a belső memóriában Tömbök (vektor, mátrix, n-dimenziós tömb)‏ Kapcsolt listák Fa adatszerkezet (rekordszerkezet, algebrai kifejezés)‏ Más adatszerkezetek • Verem • Sor • Láncolt lista • Gráfok

  6. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Lineáris (egydimenziós) tömbök Hasonló adatelemek véges számú tagból álló listája. Az egyes elemekre az n tagú halmaz egymást követő sorszámaival hivatkozhatunk. (1,2,3,...,n)‏ C-ben és Java-ban (0,1,2,...,(n-1))-el hivatkozunk Jelölések: Indexes jelölés a1, a2, a3,...., an Zárójeles jelölés A(1), A(2), A(3),..., A(N)‏ Szögletes zárójeles jelölés A[1], A[2], A[3],…, A[N] Jelöléstől függetlenül az A[K]-ban levő számot indexnek, az A[K]-t indexelt változónak nevezzük

  7. 1 Antal Árpád 2 Bács Béla 3 Csedő Csaba 4 Dávid Domokos 5 Erőss Elemér 6 Filó Ferenc Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus HALLGATÓ nevű tömb A számok a hallgatóknak a helyét adják meg az adatszerkezetben: HALLGATÓ[1] – Antal Árpádot jelenti HALLGATÓ [5] – Erőss Elemért A memóriában is szekvenciálisan, egymás után vannak elhelyezve az információk.

  8. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Kétdimenziós tömbök (mátrixok vagy táblázatok)‏ mxn méretű kétdimenziós A tömb m.n adatelemből áll. Indexnek nevezett számpárral hivatkozhatunk az elemekre (pl. J, K) 1≤J≤m és 1≤K≤n Jelölés AJK, vagy A[J,K] Oszlopok Sorok 3x4 méretű kétdimenziós tömb

  9. (1,1)‏ (1,1)‏ (2,1)‏ 1.Oszlop (1,2)‏ 1.Sor (3,1)‏ (1,3)‏ (1,2)‏ (1,4)‏ (2,2)‏ 2.Oszlop (2,1)‏ (3,2)‏ (2,2)‏ 2.Sor (1,3)‏ (2,3)‏ (2,3)‏ 3.Oszlop (2,4)‏ (3,3)‏ (3,1)‏ (1,4)‏ (3,2)‏ 3.Sor (2,4)‏ 4.Oszlop (3,3)‏ (3,4)‏ (3,4)‏ A A Oszlop vagy sor szerinti sorrendben helyezik el az információt a belső memóriában

  10. Vásárló Ügynök 1 Antal Szabó 2 Bács Rancz 3 Csedő Janó 4 Dávid Rancz 5 Erőss Szabó 6 Filó Janó 7 Gergely Rancz 8 Halmos Szabó 9 Incze Rancz Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus

  11. Vásárló Mutató Ügynök 1 Antal 3 Janó 1 2 Bács 2 Rancz 2 3 Csedő 1 Szabó 3 4 Dávid 2 5 Erőss 3 6 Filó 1 7 Gergely 2 8 Halmos 3 9 Incze 2 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus

  12. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Fa adatszerkezet. Az adatelemek között hierarchikus kapcsolat van. Hurok nélküli gráf (fa adatszerkezet). alkalmazott Személyi szám név cím kor fizetés Vezetéknév Keresztnév Ország Országon belüli cím Város Utca házszám Ezt rekordszerkezetnek nevezzük. A relációs modell előtt használták. ÁLTALÁNOS faszerkezet.

  13. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Algebrai kifejezések fastruktúrája (BINÁRIS fa)‏ (2x+y)(a-7b)3 * ↑ + * y 3 - 2 x a * 7 b

  14. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus a) Bináris fák (mindenik csúcsból legtöbb két ág van)‏ b) Általános fák (mindenik csúcsból legtöbb k ág van)‏ Ábrázolás Zárójelekkel A(B,C)‏ Standard gyökér 1, bal (I), jobb(I)‏ Apa apa (0,1,2,3,2,..)‏

  15. Bináris fa ábrázolása gyökér

  16. Gyökeres általános fák ábrázolása, bal-gyerek lés jobb testvér módszerrel

  17. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Átfutás: Preorder (A,B,C)‏ Inorder (B,A,C)‏ Postorder (B,C,A)‏ Átfutási algoritmus: Procedure Preorder (gyökér)‏ I gyökér; k 0 folytatás = “igen” A B C

  18. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus While folytatas = “igen” if i<> 0 then feldog (i); k k+1; v(k) i; i bal(I)‏ else if k = 0 then folytatas = “nem” else i v (k); k k-1; i jobb(i)‏ end if end if end while Return

  19. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus 5 7 3 8 2 9 Preorder (5,3,2,9,7,8)‏ Inorder (2,3,9,5,7,8)‏ Postorder (2,9,3,8,7,5)‏

  20. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus 2 3 7 5 8 5 Preorder Inorder Postorder

  21. 1 2 3 4 5 6 7 1 2 3 4 5 6 7 15 6 2 9 15 6 2 9 17 3 1 2 3 4 5 6 7 15 6 2 9 17 3 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus A verem: LIFO struktúra (Last In First Out), utolsó be, első ki struktúra Tető[V]=4 Tető[V]=6 Beszúr, töröl, kivesz, üres, alulcsordul, túlcsordul Tető[V]=5

  22. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Az előzőekben egy n elemet tartalmazó verem van megvalósítva V[1..n] tömbbel. Tető[V] attribútum a verembe legutoljára betett elemnek az indexe. V[1..tető[V]] elemekből áll, amelyek közül V[1] a verem legalsó, V[tető[V]] pedig a legfelső eleme. Tető[V]=0 a verem nem tartalmaz elemet és üresnek nevezzük. Ha az üres veremből próbálunk elemet kivenni, alulcsordul. Tető[V]>n akkor a verem túlcsordul. ÜRES-VEREM(V)‏ 1. If tető[V]=0 2. then return IGAZ 3. else return HAMIS

  23. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus VEREMBE(V,x)‏ • If tető[V]=n 2. then error “túlcsordulás” 3. else tető[V]←tető[V]+1 4. V[tető[V]]←x VEREMBŐL(V)‏ 1. If ÜRES-VEREM(V)‏ 2. then error “alulcsordulás” 3. else tető[V]←tető[V]-1 4. V[tető[V]+1]

  24. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Sorok: Értelmezett műveletek: SORBA(BESZÚR), SORBÓL (TÖRÖL)‏ FIFO tulajdonsága van, mint emberekből álló sor a pénztárnál. Első elem fej, utolsó elem vég. Egy legfeljebb n-1 elemű sor megvalósítható egy S[1..n] tömb felhasználásával. Attribútumok: • fej[S], a sor első elemét indexeli • vég[S], annak a helynek az indexe, amelyre a legközelebb beérkező elemet fogjuk elhelyezni. fej[S]=vége[S] a sor üres Kezdetben fej[S]=vége[S]=1 üres sorból a kivevés alulcsordulás fej[S]=vége[S]+1 a sor tele van, beszúrás túlcsordulás

  25. 1 2 3 4 5 6 7 8 9 10 11 12 18 23 6 2 4 1 2 3 4 5 6 7 8 9 10 11 12 3 5 18 23 6 2 4 19 1 2 3 4 5 6 7 8 9 10 11 12 3 5 18 23 6 2 4 19 Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus A sor 5 eleme az S[7..11] pozícióban fej[S]=7 vége[S]=12 Sorba(S,19), Sorba(S,3), Sorba(S,5)‏ vége[S]=3 fej[S]=7 Sorból(S)‏ vége[S]=3 fej[S]=8

  26. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus SORBA(S,x)‏ • S[vége[S]]←x • if vége[S]=hossz[S] • then vége[S]←1 • else vége[S]←vége[S]+1 SORBÓL(S)‏ • x←S[fej[S]] • if fej[S]=hossz[S] • then fej[S]←1 • else fej[S]←fej[S]+1 • return x

  27. Gráfok ábrázolási módja Szomszédsági lista csúcsmátrix 1 2 3 4 5 1 0 1 0 1 1 2 1 0 1 1 0 3 0 1 0 1 0 4 1 1 1 0 1 5 1 0 0 1 0 1 2 1 2 4 5 2 1 3 4 3 3 2 4 4 2 3 5 1 5 4 5 4 1 1 2 3 4 5 6 1 1 1 1 0 0 0 0 0 1 2 3 2 4 2 0 0 0 1 0 0 3 6 2 3 0 1 0 0 0 1 4 1 0 0 0 1 0 4 5 1 5 0 1 0 0 0 0 4 5 6 5 2 6 0 0 0 0 1 0 6 5

  28. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Gráfalgoritmusok: Szélességi keresés Mélységi keresés Minimális feszítőfák (Kruskal és Prim algoritmusai)‏ Adott csúcsból induló legrövidebb utak • Bellman-Ford algoritmus • Dijkstra algoritmusa Hálózati folyamok • Ford és Fulkerson algoritmus • Edmonds-Karp algoritmus

  29. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus 3. Az adatok szervezése és feldolgozása a külső memóriában (Hard Disk)‏ Fájlok, szervezési módok és hozzáférés Fájlok: Volumen, blokkok, Létesítés, Aktualizálás Lekérdezés, Közbeékelés Másolás Szervezés (szekvenciális, index szekvenciális, szelektív, relatív, inverz, multiindexált, összekötésekkel, adatbázis)‏

  30. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Az adatstruktúrák alapvető kiválasztási tényezői. Az adatszerkezet az adatszervezés matematikai vagy logikai modellje. 1. A választott modell szerkezetének elegendően gazdagnak kell lennie ahhoz, hogy tükrözni tudja az adatok közötti aktuális és valós kapcsolatokat 2. A szerkezetnek elegendően egyszerűnek kell lennie ahhoz, hogy hatékonyan fel lehessen dolgozni az adatokat

  31. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus 4. Az adatstruktúrák kiválasztási kritériumai. • Volumen • Operációk és frekvenciájuk • Aktivitási mutatója az operációnak • A struktúra élettartama • A programozás komplexitása • A teljesség biztosítása • A kapcsolódó tevékenységek időtartama és komplexitása • A memória hatékony kihasználása

  32. Sapientia - Erdélyi Magyar Tudomány Egyetem (EMTE) Csíkszereda IRT- 2. kurzus Ellenőrző kérdések • Elemi adatok • Adatstruktúrák • Az adatstrukturákkal történő műveletek • Adatszervezés, Adattípusok • Bináris adatfák (reprezentálás és átfutás)‏

  33. Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 2. kurzus Ellenőrző kérdések • Általános adatfák (reprezentálás és átfutás)‏ • Általános gráfok (reprezentálás és átfutás)‏ • Adatfeldolgozás a belső memóriában (Sorbarakás, Keresés, Szétszórás)‏ • Az adatok szervezése a külső memóriában • Az adatok feldolgozása a külső memóriában • Az adatstruktúrák kiválasztási kritériumai.

More Related