You are on page 1of 6

Fakulta riadenia a 

informatiky, Žilinská univerzita v Žiline


Algoritmy a údajové štruktúry 1

2. Semestrálna práca

Letný semester Filip Vrábeľ


2019/2020 5ZY031
Popis tried

 Trieda UzemnaJednotka
Trieda reprezentuje všeobecnú územnú jednotku, z ktorej dedia konkrétne územne
jednotky: štát, obvod, okres, obec, okrsok. Každý územná jednotka okrem všeobecných
atribútov ako Názov, typ a číselné vyjadrené atribúty ako počty voličov roztriedených podľa
rôznych kritérií, obsahuje usporiadanú sekvenčnú tabuľku ( kľuč = názov, dáta = smerník )
obsahujúc smerníky na územné jednotky, ktoré pod ňu spadajú a hodnotu atribútu PatrimDo
vyplnenú smerníkom na jednotky do táto konkrétna patrí.

 Triedy štát, obvod, okres, obec, okrsok


Triedy ktoré dedia z územnej jednotky hlavnú štruktúru, atribúty a metódy.

 Trieda Loader
Reprezentuje triedu, kde sú načítavané konkrétne informácie a hodnoty z priložených csv
súborov a vytvárané inštancie tried Kraj, Okres a pod. Načítané hodnoty (string, int, double)
sú pridelené konkrétnym územným jednotkám. Okrem hierarchického modelu tu vzniká aj
neutriedená sekvenčná tabuľka , ktorej kľúčom je kód územnej jednotky a dáta sú smerník
na ňu. Táto tabuľka disponuje všetkými uzemnými jednotkami okrem okrskov a využíva sa
ďalej v programe na filtrovanie a a kedže je neutriedená tak na usporiadanie podľa zvolených
kritérií.
Struktura Array je použíta pri vytvárani neutriedenej sekvenčnej tabulky obsahujuc hodnoty
hlasov pre každý politický subjekt (kluc = nazov pol. Subjektu, data = pocet hlasov), na
inicializáciu klučov a následnú modifikáciu dát podľa neho.

 Trieda Kriterium
Trieda Kriterium predstavuje všeobecnú triedu, ktorej úlohou je prebrať funkčný objekt
a vrátiť hodnoty niektorej jeho vlastnosti. Triedy ako KriteriumNazov, KriteriumUcast vracajú
konkrétnu hodnotu daného objektu.

 Trieda Filter
Trieda filter kooperuje s konkrétnym kritériom a vráti objekt ako výstup ak dané spľňa dané
kritérium.
 Udajova databaza
Trieda kde sa vyhodnocujú filtre s konkrétnymi kritériami a vracajú výstupy prijatelné
s požiadavkami prijatými ako parameter od užívateľa a následne sa zobrazujú ako výstup.

 Politicky subjekt
Trieda reprezentuje a uchováva dané parametre o konkrétnom politickom subjekte.

 UzemnaJednotkaVyhovujuca
Trieda reprezentujúca objekt uchovávajúca zjednotenie množím atribútov územnej jednotky
a politického subjektu. Daný objekt je výstupom ak nastal prienik filtrov pre územnú
jednotku a politický subjekt.

Zložitosti operácii

O(n*m*k*l*j*h) Načítavanie územných jednotiek Hierarchia je rozdelená na 6 úrovní. Po


načítaní údaju z csv je porovnaný s údajmi z tabuľky danej jednotky, ak tam je prítomný tak,
tak sa zahne prehliadka tabuľky toho objektu, ak nie, tak sa daný prvok vytvorí. Takýmto
spôsobom sa načítajú údaje všetkým územným jednotkám korektne.

O(n*6) Do objektov okrsok sa načítavajú hodnoty parametrov. Objekt o stupeň vyššie


v hierarchii dostane priradenú hodnotu atribútu : súčet daných hodnôt objektu pod ním.
Násobiteľ zložitosti vyjadruje počet úrovní hierarchie.

O(n) Vypísanie volieb z tabuľky. Prechod všetkými prvkami cez integrátor a vypísanie daných
hodnôt

O(n*m*6) Načítavanie hodnôt politických subjektov do tabuľky okrsku. Úroveň vyššie


v hierarchii dostane priradená hodnotu ako súčet hodnôt jednotiek, ktoré do nej patria.

O(m*n) prechádzanie tabuľky kde daná tabuľka je prvkom inej tabuľky.

O(n) Priradenie názvu ako kľúča tabuľke


O(n) Filter – prejdene celou vstupnou tabuľkou a porovnanie hodnôt, podľa hodnoty počtu
použitých filtrov na jedno hľadanie výsledkov môžeme násobiť zložitosť danou hodnotou.

O(n*m) Prejdenie všetkých prvoku tabuľky a zvarovej celej tabuľky nachádzajúcej sa


v danom prvku.

n*log(n) Usporiadanie tabuľky – použitá štruktúra hýb sort

Používatelská príručka
Program a následná manipulácia užívateľom je zaezpečená v prostredí konzolovej aplikácie
a teda príkazy vykonania daných operácii a filtrácii vysledkov sú podmienené zadávaniu
konkrétneho tvaru slova ako užívatelova odpoved na otázku, položenú programom. Príkazy
sú navrhnuté na čo najednoduhšie ovládanie aplikácie a teda napríklad zvolenie čísla
z výberu možností predstavujúceho dve alebo viac hodnot v závislosti od danej požiadavky.
Ako prvé je užívatelovi predstavená možnosť výberu z viacerých druhou poskytnutia
informácii, uplatnený jednoduchým sposobom výberu čísla možnosti. Po výbere si užívatel
može, ale nemusí vybrať zo sady filtrov, ktoré slúžia na bližšie špecifikovanie očakaváneho
výsledku. Po zodpovedaní je užívatelovi zobrazený vásledok s informáciami ako: názov
uzemnej jednotky, počet zapísaných voličov, počet zúčastnených percent a pod.
1. Vybrať typ informácií
2. Prijať / neprijať filter
3. Zadať parameter

You might also like