1 / 21

4 tema. Duomen ų strukt ū ros

4 tema. Duomen ų strukt ū ros. Paprastieji : Paprastųjų duomenų pagrindinis požymis- vienas vardas - viena reikšmė Sveikieji skaičiai; Realieji skaičiai; Tekstiniai duomenys (rašmenys); Loginiai duomenys; Strukt ūriniai: tiesinės struktūros;

nitsa
Download Presentation

4 tema. Duomen ų strukt ū ros

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. 4 tema. Duomenų struktūros • Paprastieji: Paprastųjų duomenų pagrindinis požymis- vienas vardas - viena reikšmė Sveikieji skaičiai; Realieji skaičiai; Tekstiniai duomenys (rašmenys); Loginiai duomenys; • Struktūriniai: • tiesinės struktūros; • hierarcinės struktūros.

  2. Sveikieji skaičiai • sudėties (+), • atimties (-); • daugybos (*) operacijos. • sveikosios dalies nustatymas, dalijant vieną iš kito; • liekanos nustatymas dalijant vieną skaičių iš kito. • Skaičiaus dydžio intervalas. • 1 baitas [0, 255], 2 baitai [-32768, +32767],4 baitai[-2147483648, + 2147483647]ar 12baitų[28 ženklai] • Didžiausiam sveikajam skaičiui M+∞ ir mažiausiam neigiamam skaičiui M-∞ galioja lygybės: • M+∞+1=M-∞,pvz: 0111111 (+127) + 1 = 1111111 (-127) • M-∞-1=M+∞ ,

  3. Realieji skaičiai • sudėties (+), atimties(-), • daugybos (*) irdalybos (/) • operacijos kaip ir su matematiniais realiaisiais skaičiais. • Visos operacijos kompiuteryje atliekamos su tam tikru tikslumu: • 1/3 standartiniu 4 baitų realiuoju skaičiumi bus 0,3333333, • o matematikoje tiksli 1/3 išraiška-begalinė dešimtainė trupmena. • Pagal tikslumo poreikį: • 4 baitų [ 6-7 ženklai po kablelio],8baitų [15-16 ženklų po kablelio], • 16baitų[36ženklai]. • Fiksuotam tikslumui reikia naudoti apvalinimo funkciją • ROUND(išraiška;kiek skaičių po kablelio) arba meniu Tools/Options kortelėje Calculation pažymėti nuorodą Precision as displayed.

  4. Tekstiniai ir loginiai duomenys Pagrindinė tekstinių duomenų (rašmenų) savybė - jų sutvarkymas, t.y. savybė būti palyginamiems. Paprastai tai “a” < ”b”, “b” < “c” ir t.t. Kiekvienas simbolis turi skaitmeninį kodą, pagal kuriuos ir atliekamas lyginimas. Naudojamas ir atskiras tekstinių duomenų tipas - eilutė (string), kurią sudaro rašmenų rinkinys. Eilutės tipo duomenys turi vieną operaciją - susijungimą (konkatenciją). Pvz.: ‘abcd’ & ‘efg’=’abcdefg’. Loginiams duomenims, įgaunantiems tik reikšmę “teisinga” arba “klaidinga” taikomi visi logikos algebros veiksmai. Loginės konstantos paprastai žymimos žodžiais TRUE (teisinga) ir FALSE (klaidinga), loginės operacijos: disjunkcija – OR, konjunkcija – AND.

  5. Struktūriniai duomenų tipai • tiesinėsstruktūros; • Masyvai; • Sąrašai (įrašai); • Rodyklės; • Nepertraukiamieji sąrašai; • Susietieji sąrašai; • Įrašai; • Stekai; • Eilės; • hierarchinės struktūros; • Medžio tipo struktūros; • Binariniai medžiai.

  6. Masyvai Masyvas - tai vieno tipo duomenų rinkinys. Visi masyvo elementai turi tą patį vardą ir skiriasi tik savo indeksu. Pagal indeksą galime kreiptis į bet kurį masyvo elementą tiesiogiai ir naudoti jį kaip pavienį duomenį. 0.54.77.20.8… A1A2A3A4… A(1) A(2) A(3) A(4)… B = A(1) + A(3) Masyvo elementai gali būti ne tik paprastųjų tipų, bet ir struktūriniai arba kiti masyvai. Tada turime daugiamatį masyvą.

  7. Įrašai Aprašant ūkinės veiklos procesus dažnai tenka naudoti skirtingų tipų duomenis, tada jų rinkinys sudaroįrašą (record). Įrašas - tai įvardintų komponentų - laukų rinkinys, turintis bendrą vardą. Į kiekvienąįrašo lauką galime kreiptis įrašo bei lauko vardu; pvz.: turime įrašą: Įrašas B B. Detalė B. Nr. B. IlgisCHAR INT REAL Ir masyve, ir įraše galima tiesiogiai kreiptis į konkretų elementą. Įrašuose gali būti skirtingi duomenų tipai, o masyvų elementų indeksacija yra lankstesnė, nes leidžia apskaičiuoti reikalingą indeksą.

  8. Sąrašai • Įrašų rinkiniai sudaro sąrašus. • Kuriant bet kokią duomenų struktūrą reikia spręsti tokius uždavinius: • kaip atskirti duomenų elementus tarp savęs, • kaip ieškoti reikalingų elementų, • kaippridėti ar pašalinti atskirus sąrašo elementus, išlaikant jų surikiavimo tvarką. Sąrašo įrašai atskiriami vienas nuo kito nustatant jiems pastovų ilgį, to paties tipo DE užima atmintyje vienodą baitų kiekį. Sudarydami sąrašo įrašo struktūrą nurodome jį sudarančių DE bazinį tipą ir ilgį. Pavyzdžiui, sąrašo apie detales struktūra gali būti aprašyta taip: Tokio sąrašo įrašas užims 26 baitus atminties ir, pvz., 15-os detalės ilgį rasime prie sąrašo 15-to įrašo adreso pridėję 22.

  9. Sąrašai (2) Priklausomai nuo įrašų išdėstymo kompiuterio atmintyje, yra skiriami: • Vientisieji (nepertraukiamieji) sąrašai; • Nuorodiniai (susietieji ) sąrašai. Dažniausi veiksmai su sąrašais: Sąrašo elementų papildymas ir pašalinimas norint išlaikyti nustatytą jų surikiavimo tvarką. Kaip tai padaryti, neperrašinėjant sąrašo kiekvienu atveju? Duomenų išsidėstymas kompiuterio pagrindinėje atmintyje apibrėžiamas skaitmeniniais adresais. Jei žinomas kokio tai duomenų elemento (DE) adresas, tai rasti šį elementą yra paprasta. DE buvimo adresą nurodo rodyklės. Rodyklėmis (pointer) yra vadinamosatminties ląstelės, saugančios kitos ląstelės adresą.

  10. Rodyklės Bibliotekos katalogas, surikiuotas pagal pavadinimus ir autorius, panaudojant rodykles: Rodyklės

  11. Vientisieji (nepertraukiamieji) sąrašai Taigi, kaip galima saugoti sąrašus kompiuterio atmintyje? Vienas iš būdų – saugoti visą sąrašo turinį vieningame atminties ląstelių bloke su nuosekliais adresais. Jeigu vienam sąrašo elementui (eilutei) įrašyti skirsime M atminties ląstelių (baitų), o tokių eilučių maksimaliai gali būti N, tai kompiuterio atmintyje reikės rasti vientisą bloką iš M*N ląstelių. Tokia struktūra vadinama vientisuoju sąrašu. Tai tipiška masyvo struktūra: M ląstelių (baitų) N įrašų

  12. Pradžios rodyklė Duomenys Rodyklė Duomenys Rodyklė Duomenys Rodyklė NIL Nuorodiniai (susietieji ) sąrašai Nuorodiniame sąraše kiekvieno įrašo vieta atmintyje nereglamentuojama. Toks įvairiose atminties vietose išmėtytas sąrašas susiejamas rodyklėmis. Tada kiekvienam nuorodinio sąrašo elementui saugoti reikės M+1 ląstelių, ir paskutinėje M+1 ląstelėje reikės saugoti rodyklę į kitą pagal rikiavimo tvarką sąrašo elementą, t.y. to elemento pirmos ląstelės adresą. Nuorodinis sąrašas visada prasideda sąrašo pradžios rodykle ir baigiamas elementu su nulinės reikšmės rodykle (NIL):

  13. Šalinamas įrašas Pradžios rodyklė Sena rodyklė Duomenys Rodyklė NIL Duomenys Rodyklė Duomenys Rodyklė Nauja rodyklė Įrašo šalinimas nuorodiniame sąraše Tam reikia tik pakeisti vieno atitinkamo įrašo rodyklės turinį:

  14. Naujas įrašas Pradžios rodyklė Nauja rodyklė Duomenys Rodyklė NIL Duomenys Rodyklė Duomenys Rodyklė Ankstesnė rodyklė Įrašo įterpimas nuorodiniame sąraše Naujas įrašas išsaugomas bet kurioje laisvos atminties srityje ir modifikuojama tik atitinkamo įrašo pagal rikiavimo tvarką rodyklė, suteikiant jos reikšmę naujo įrašo rodyklei:

  15. 1 0 1 1 Stekas Jeigu elementų įterpimo ir šalinimo operacijų naudojimo sritį apribosime tik sąrašo galais, tai vientisojo sąrašo panaudojimas taps patrauklesnis. Tokios duomenų struktūros pavyzdžiu gali būti stekas - sąrašas, kuriame visi įterpimo ir šalinimo veiksmai atliekami viename gale, t.y. paskutinis į jį patalpintas elementas paimamas pirmas ir atvirkščiai, tai vadinama LIFO – Last In First Out). Tokių struktūrųpavyzdžiai - šaunamo ginklo dėklas, padėklai valgykloje, paprogramės parametrai, grįžimo adresai programose, atlikus vidines procedūras ir t.t. Steko galas, kur vyksta įrašų pridėjimas ir šalinimas, vadinamas viršūne, o kitas – pagrindu.

  16. 0 0 0 1 1 0 1 Eilė Priešingai stekui, kur elementų pridėjimas ir paėmimas vyksta viename gale, eilė – tai toks sąrašas, kuriame elementų pridėjimas vyksta viename gale, o paėmimas kitame. Eilės ilgis iš anksto neapibrėžiamas ir teoriškai gali būti begalinis. Tokia seka vadinama “pirmas įėjo - pirmas išėjo”(FIFO – first in first out). Eilės kraštas, kuriame elementai paimami, vadinamas pradžia, o kur pridedami – eilės pabaiga. Saugant eilę kompiuterio atmintyje kaip susietą sąrašą, reikia naudoti dvi rodykles, nurodančias eilės pradžią ir pabaigą.

  17. Hierarchinės struktūros Nereguliarūs duomenysdažnai pateikiami kaip hierarchinės struktūros. Hierarchinę struktūrą turi įvairios adresų sistemos (pašto, interneto). Ji naudojama sistematizacijoje bei klasifikacijoje, pavyzdžiui, duomenys apie turimąprograminę įrangą gali turėti tokią hierarchinę struktūrą:

  18. Hierarchinės struktūros (2) Hierarchinėje struktūroje kiekvieno elemento adresas apibrėžiamas kreipties keliu (maršrutu), vedančiu nuo struktūros viršūnės iki ieškomo elemento. Pvz.: programos Corel DRAW kreipties kelias ankstesnėje struktūroje bus: Programinė įranga ►Taikomoji ►Vektoriniai redaktoriai ►Corel DRAW Šio kelio atvaizdavimo (kodavimo) būdai yra įvairūs. Informatikoje dažnai naudojamas būdas, paremtas taip vadinamu dichotomijos metodu. Jis leidžia kreipties kelią sutvarkytoje struktūroje užrašyti labai kompaktiškai, naudojant dvejetainius simbolius. Dichotomijos metodu sudarytoje hierarchinėje struktūroje kreipties kelią į bet kurį elementą galime pateikti kaip kelią per racionalų labirintą su posūkiais į kairę (0) ir dešinę (1) ir išreikšti kreipties kelią kompaktišku dvejetainiu įrašu.

  19. Informacinis aprūpinimas Taikomosios programos Netaikomosios programos Grafiniai redaktoriai Negrafiniai redaktoriai Tekstiniai procesoriai Netekstiniai procesoriai Word Pad Word 2000 Pvz. struktūroje: Kreipties kelias į tekstų procesorių Word 2000 bus išreikštas dvejetainiu skaičiumi 1 0 1 0.

  20. 2 e2 e1 3 e3 1 5 e4 e5 4 e6 Medžio tipo struktūros (grafai) Medžio tipo struktūrasnagrinėja speciali matematikos sritis, vadinama grafų teorija. Grafą(G) sudaro dvi aibės: viršūnių aibė(V) ir briaunų aibė (G), G = (V,E). Viršūnės gali būti nurodomos jų numeriais, o briaunos jungiamų viršūnių pora. Tam tikros grafų rūšys turi savo pavadinimus. Medžiu vadinamas susietas grafas, kuriame nėra ciklų. Medžiai turi vieną viršūnę, į kurią neįeina jokia kita. Ši viršūnė vadinama šaknimi. Iš šaknies į kiekvieną viršūnę veda vienintelis kelias

  21. S * - + / d * a b c c e f Dvejetainiai medžiai Dvejetainiu arba binariniu vadinamas orientuotas medis, kuriame į kiekvieną viršūnę, išskyrus šakninę, įeina viena briauna, o išeina dvi. Medžio dalis, išeinanti iš bet kokios viršūnės, vadinama šaka. Grafų tipo struktūros naudojamos modeliuojant objektų sistemas, tarp kurių egzistuoja tam tikri ryšiai, santykiai, priklausomybė, kai reikia ištirti tokių sistemų struktūrą, jų funkcionavimą. Pvz.: pavaizduoti binariniu medžiu reiškinįS=(a+b/c)*(d-e*f):

More Related