Operatsioonid 1 Kahendkuhjad 11 1.1 Operatsioonid Lisamisülesanne Lisada antud kahendkuhja antud kirje. Sisend: kahendkuhi, kirje. 1 Kahendkuhjad 12 1.1 Operatsioonid Lahendus Lisatakse endisi tippe puutumata puule uus tipp, nii et puu jääb kom- paktseks kahendpuuks; kirjutatakse uus kirje uude tippu; viiakse uus kirje mullina mööda puustruktuuri üles oma kohale, nii et ka kuhjatingimus taastub. 1 Kahendkuhjad 13 1.1 Operatsioonid Mullina ülesviimine Mullina ülesviimine (ingl bubble-up): kui kirje on tipu ülemuse kirje suhtes vales järjestussuhtes, siis vahetatakse ta ülemuse kirjega, ja viiakse ta omakorda sealt mullina üles. 1 Kahendkuhjad 14 1.1 Operatsioonid Keerukus
erinevates (ükskõik millistes) tervikutes. Kui agregatsioon on jagatud, siis on arvukus terviku poolel suurem kui üks. Jagatud agregatsioon on tavalise agregatsiooni erijuhtum. Kompositsiooni agregatsioon Kompositsiooni agregatsioonis tervik omab osasid. Osad “elavad” terviku sees; nad hävivad koos oma tervikuga. Arvukus terviku poolel peab olema 0 või 1 (0..1), osa poolel suvaline. Kompositsiooni agregatsioon moodustab puustruktuuri, jagatud agregatsioon võrkstruktuuri. Kompositsiooni agregatsiooni esitamise kolm võimalust: 1) täidetud rombiga terviku poolel 2) kui osasid rohkem kui üks, võib tervikupoolsed otsad ühendada ühte rombi (puustruktuur). Seda saab teha ka tavalise agregatsiooni puhul 3) panna osaklassid tervikklassi sisse Rollid saab viia atribuutideks ning klassid atribuuditüüpideks. Kompositsiooniagregatsiooni realiseerimisel peab tervikklass juhtima
bait, teised rohkem. MASSIIVID – Massiiv on jada ühetüübilisi väärtusi: tähti, täisarve, ujukoma-arve, teisi massiive vms. Massiiv on hulk kõrvuti sama tüüpi või sama suurusega objekte (täisarvud, ujukoma-arvud alammassiivid vms). List üldiselt tähendab, et objektid ei pea olema sama tüüpi/sama suured ja nad võivad sisaldada kuitahes sügavaid alamliste. PUUD – Arvutiteaduses on puu laialt levinud abstraktne andmetüüp, mis simuleerib hierarhilist puustruktuuri põhiväärtuse ja alamväärtustega(’’vanem ja lapsed“), mis on ühendatud sõlmede kogumina. 6. nädal • Eksamiks: kompileerimine, interpreteerimine, parsimine, jit, vahekood, programmeerimiskeeled vs kirjelduskeeled, json, html, sql, keelte äratundmine (assembler, fortran, cobol, lisp, C, modula/pascal, python). Mis on data warehouse. Kompileerimine - tõlgib kõrgtaseme keelest masinkoodi (või mingisse nn. vahekoodi, näit. Java baitkoodi)