SEMINARSKI MATURSKI I DIPLOMSKI RADOVI

seminarski
Pitanja i Odgovori:
Kako do gotovih radova!
Izrada novih radova!

Kontakt:
[email protected] +381611100105 (SMS, Viber, WhatsApp)

Bavimo se izradom materijala (seminarski, maturski, maturalni, diplomski, master i magistarski radovi) po Vašoj želji. Okupili smo ozbiljan i dokazan tim saradnika usavršen za izradu radova iz: ekonomije, bankarstvo, istorija, geografija, informacioni sistemi, računarske mreže, hardver, inteligencija, turizam, menadžment, fizika, informatika, biologija .  Gotovi radovi ovde...
Da li ste zadovoljni kvalitetom i brzinom naše usluge?
 
Metode programiranja - druga godina PDF Štampa

1. Logicki tip (boolean) – vrednosti operacie, relacije, funkcija. Tip koji odgovara podacima koji pripadaju matematickoj logici. Logicki tip ima identifikator boolean. Logicke konstante koje se koriste su: TRUE I FALSE. Operacija ima rezultat koji je tipa da ili ne. Promenljivoj definisanoj kao boolean dodeljujemo vrednost true a ukoliko se u programu ne zadovolji neki uslov promenljivoj dodelimo false!

 

2. Celobrojni tip(integer) -  najvazniji tip I on se najcesce koristi. Celobrojni tip ima identifikator integer. Vrednosti celobrojnog tipa odgovaraju jednom podskupu skupa celih brojeva u rasponu od –32768 do +32768. konstanta maxint pokazuje najveci ceo broj koji moze da se predstavi. Osnovne operacije su +,-,*, div(celobrojni deljenje), mod(deljenje sa ostatkom), abs(i), sqr(i)…

 

3. Realan tip -  ime identifikator real! Predsatvlja jedan podskup skupa realni brojeva . Postoje dva nacina predstavljanja: 1.prikazuje se celobrojni deo I izlomljeni deo (4.59). Paskal zahteva da se prikazu oba dela. 2. eksponencijalni oblik (2.8 E42) koristi se za brojeve sa velikim brojem decimalnih polja. Celobrojna konstanta nije realna ali se ta dva tipa mogu sabrati. Operacija +,-,*,/,<,>, funkcije abs, sqr, sin, cos, round.

 

4. Znakovni tip CHAR – ima identifikator tipa char. Konstante su znakovi tj slova I cifr. Znakovni tip obuhvata sve znakove iz ascii sistema. Znakovi se prikazuju tako sto se pisu apostrofi (‘1’, ‘e’). Funkcije ord(c) daje ascii kod znaka, pred(c) za dati znak daje predhodni, succ(c) za dati znak daje sledeci!

 

5. Nestandarni skalarni tip -  tip podatka koji nije unapred ugradjen u pascal vec ga kreira programer    type dan=(ponedeljak, utorak Sreda…)  var a:dan . Za ovaj tip se ne definisu ulaz I izlaz. Sluza da poboljsaju razumljivost programa. To je uredjen skup, sto znaci da nije svejedno kojim redosledom navodimo konstante. Relacije koje se koriste su =,<,>,<=,>=. Funkcije koje se koriste supred – predshodni element, succ – sledeci.

 

6. Opsta struktura pascala-  opstu struk pasc cini zaglavlje  - imaju ga program, potprogram I unit, sadrzi ime programa (program ime, unit ime). Ta imena moraju da daju neki nagovestaj o cemu se radi u programu. Tu se nalazi I naredba imenovanih konstanti (const a =5), naredbe za formiranje nestandardnih tipova podataka( tip podataka koji zadaje sam programer). Deklaracija – ovde se nalazi naredba var koja sluzi da se promenljivma dodele odredjeni tipovi podataka. Tu morraju da se nalaza sve promenljive koje se koriste u programu. U ovom delu se definisu  funkcije I procedure koje se po potrebi pozivaju iz izvrsnog dela. Izvrsni deo – se satoji od dve naredbe: begin I end.

 

 

7. Naredba dodeljivanja I slozena naredba -  naredba dodeljivanja vrednosti (a:=10). U slucaju da tu naredbu koristimo u naredbi if onda jednakost koristimo bez dve tacke jer se ovde proverava jednakost dve promenljive. Jedan od osnovnih postulata paskala je 1. posao 2. naredba. Ukoliko imamo vise poslova njih je potrebno postaviti izmedju begin I end (primer). U slucaju da imamo vise naredbi te naredbe se moraju staviti u programske zagrade.

 

8. Naredbe za organizovanje ciklusa – da nema ciklusa ne bi bilo programiranja. Ciklusom zadajemo posao proizvoljnog ili promenljivog obima jednom naredbom. Pascal ima 3 naredbe ciklusa koje formalno mogu da zamene jedna drugu. Naredba for – (for I=m to n) koristi se kad aunapred znamo broj izvrsavanja ciklusa. I moze biti svakog tipa sem real.  M predstavlja pocetnu vrednost, a n krajnju. Kada I postane n ciklus prestaje. Ako je m vece od n ciklus se nece ni jednom izvrsiti. Naredba while = koristi se kada broj izvr uslova nije poznat (while uslov do) Dok je zadovoljen uslov izvrsava se ciklus. Naredba repeat = radnja se ponavlja sve dok uslov ne bude zadovoljen!

 

9. Uslovne naredbe if, case I goto -  u pascalu postoje 3 osnovne naredbe  - naredba if – imamo 2 primera koriscenja ove naredbe (if then else, if then). Naredba case –naredba visestrukog izbora case izraz of (c1:nared ba, c2:naredba2,… end;). U svakom redu moze biti jedna ili vise promen-ljivih, ali ne mora biti isti broj promenljivih u svim redovima. Na osnovu vrednosti izraza (c1…cn) odlucuje se sta ce se dalje raditi. Izraz moze biti sve sem realnog izraza. Naredba goto kace na odredjenoi red programa.

 

10. Ulazno izlazne procedure – pascal ima programe za ulaz I izlaz. Potprogram za izlaz je write ili writeln. Write ispisuje izlaze u jednom redu, dok writeln ispisuje izlaze jedan ispod drugog. Svaki parametar moze da bude predstavljen na vise nacina. 1. write(2-y-2) izraz cija vrednost ide na izlaz. .2. write(I:4) celobrojna konstanta sa 4 pozicije 3. write(I:2:4) realna konstanta sa 2 pozicije I cetiri decimalne. 4. write(‘p=’,I) ilaz predstavlja prateci text I vrednost parametra i. Potprogram za ulaz je read I readln. Read vrsi upis u jednom redu, a readln upisujemo vrednosti jednu ispod druge.

 

 

 

11. 12.  Procedure I funkcije -  potprogram je mehanizam za odredjivanje logicke celine programskim jezicima.u okviru potprograma moze se naci 1 posao ili grupa srodnih poslova. Potprogrami u paskalu se pisu u deklaracionom delu . Struktura potprograma zaglavlje sadrzi ime – preko njega se potprog poziva. U deklaracionom delu se definisu konstante koje koristimo samo  u proceduri. Paskal dozvoljava koriscenje potprograma u potprogramu, ali to se retko koristi. Izvrsni de se sastoji od  dve naredbe begin I end; s tim sto je razlika izmedju programa I potprograma u end sa ; Zaglavlje procedure ime(p1,p2,p3:tip; var p4:tip1)

Ime(p1,p2,p3:tip, var p4:tip1):tip funkcije. Funkcija vraca odredjenu    vrednost dok to procedura ne radi. Ona se poziva tako sto se ukljuci u izraz koji ima najmanje jednu naredbu f:=ime(…). Funkcija nikad ne vraca skup vrednosti vec samo jednu vrednost. Procedure: ime procedure sluzi iskljucivo za identifikaciju. Procedura nema nikakvu vrednost, za razliku od funkcije koristimo je kad aimamo vise od jednog izraza. Postoje dve vrste parametara: a)procedure(a:integer;var p:real)-parametar a je parametar vrednosti, njegova vrednost se ne menja I on se direktno salje iz programa u potprog, b) parametar p je parametar imena I on je promenljiv  - pp moze da menja vrednost I da ge vraca u glavni program.

 

13. tip skupa (set) – ima veoma ogranicenu upotrebu u praksi. Type imetipa=set of tipelementa. U skupu tip elementa navodimo sve elemente koji pripadaju tom tipu. Tip skupa moze biti boolean, enumeracija, intervalni tip, sve sem real. U programu konstanta se navodi iza zagrada [zuto,plava]. Takodje dozvoljeno je u koriscenju konstante koristiti izraze (I+j,2*I), a takodje I intervale([1..40]). Operacije +,-,unija,presek,podskup,nadskup,=<,>. Za skupovni tip se odvaja 32 bajta.

 

15.Tip Stringa  - tip sring ima identifikator string. Konstanta tipa string je text. Duzina stringa je ogranicena – najvise 255 znakova, a tekst[10] predstavlja znak koji se nalazi na desetom mestu u tekstu, a x+y predstavlja sabiranje stringova. A:string[10] – oznacava string sa najvise 10 mesta length(a) predstavlja broj koji pokazuje duzinu teksta.

 

16.Tip Sloga – od najvaznijih tipova – to je izvedeni tip koji ne postoji vec ugradjen u memoriju , nego ga kreira sam programer. Type imetipa=record i1:tip1; i2:tip2;…end; Elementi sloga se nazivaju polja :i1,i2…. Jedno polje za sebe nema nikakvo znacenje ali u skupu sa ostalim daje neku logicku celinu. Poljima sloga se pristupa tako sto se napise ime promenljive I ime tog polja (ime.polje).

 

 

 

 

 

17. DATOTEKE – postoje 3 vrste datoteke I to : tipizirane datoteke –ciji elementi imaju tip, tekstualne –sadrze tekst I netipizirane – ona prepoznaje bajtove a programer mora sam da ih definise.Datoteka je niz slogova . Na disk se podaci smestaju bit po bit. U svakom trenutku jedan slog je tekuci. Assign(f,putanja) – ovom naredbom dodeljujemo ime datoteci. Rewrite(f) – sluzi za otvaranje datoteke koja je prazna, a tekuci element je prvi koji je prazan.Ukoliko ovom komandom otvorimo dat koja nije prazna izbrisacemo sve podatke u njoj.Reset sluzi za otvaranje tekuce dat, a tekuci element je prvi slog. Read – sluzi da ucita tekuci slog na odgovarajucu promenljivu  - ne moze da se koristi kad je tekuci slog prazan.Write sluzi da se upise ono sto se nalazi u odgovarajucoj prom u dat. Funkcija eof koja je def nad tekucim slogom – ona ima vrednost true ili false . Vrednost true ima samo na poslednjem slogu. Sve dat koje se koriste u programiranju se eksplicitno zatvaraju tj. Zavaraju se kad se zavrsi rad sa njima a ne na kraju. Tekstualne dat – to je niz karaktera. Manipulisanje tekst dat se ne razlikuje mnogo od manipulisanja tastaturom I ekranom.Tekst fajlovi se mogu naci u dva rezima read only(moze samo sa se cita) write onljy (moze samo da se upisuje). Ne postoji stanje koje omogucava I jedno I drugo. Kad otvaramo dat sa reset ona je u rezimu read-o a kad aje otvaramo u rewrite ona je u write-o.

 

21. Opšta definicija strukture podataka- * Program se sastoji od dve podjednako važne komponente: algoritma i struktura podataka.

* Skalara je uređeni par (p,0); p-podatak, 0-prazna relacija;1) skalar je struktura podataka   2) ako su S1,...,Sk strukture podataka, i ako je S={S1,...,Sk} tada je uređena n+1-torka (s,r1,...,rn) gde su r1,...,rn relacije reda 2 ili većeg, takođe struktura podataka. Ako su S1,...,Sk skalario i taj skup skalara je snabdeven jednom binarnom relacijom susedstva, onda je to vektor.           3) u opštem slučaju i sastav tog skupa i relacije su funkcija vremena.* Najveći deo s.p. obuhvata skup snabdeven jednom jedinom binarnom relacijom (s,r). Strukturi podataka odgovara, ali nije isti sa njom, orjentisani graf.

 

22. Klasifikacija struktura podataka- * Kriterijumi klasifikovanja:

1) Klasifikacija prema nivou apstrakcije:a) logička s.p. je s.p. posmatrana iz ugla modela. To je pogled sa najapstraktnijeg nivoa. b) fizička s.p. je s.p. onakva kakva se nalazi u memoriji računara 2) Klasifikacija prema mestu memorisanja:a) operativne strukture          b) s.p. na masovnim medijima Između a i b postoje tri razlike: brzina pristupa, kapacitet, operativna memorija nije trajna (zapis na disku jeste) 3) Klasifikacija prema tipu relacije – odnosi se na klasifikaciju s.p. koje su zadate rednim skupom i jednom binarnom relacijom (s,r). Klasifikuju se u skladu sa relacijom na: a) linearne s.p. kojima odgovara linearni graf (svaki el. Osim jednom ima tačno jednog sledbenika/prethodnika). b) s.p. tipa stabla kojima odgovara digraf . Stablo se karakteriše time da ima tačno jedan čvor u koji ne ulazi ni jedna grana, u sve ostale čvorove ulazi tačno jedna grana. Taj digraf je slabo povezan, tj. Od svakog čvora do svakog drugog vodi put ( skup grana i čvorova). Stablo ima osobinu da element ne može imati više nego jednog prethodnika, a sledbenika može imati više. c) mrežne s.p. kojima odgovara proizvoljan digraf (svaki čvor ima proizvoljan broj prethodnika i sledbenika). Jedino što se od mreže traži je da bude povezana.

 

23. Osnovne operacije nad strukturama podataka - * Dele se u 3 grupe:  1) primitivne operacije (funkcije) – ovo su trivijalne operacije, koje sa izuzetkom jedne, se ne pojavljuju samostalno nego u sklopu sa drugima (npr. Prethodnik), među njima se izdvaja jedna koja određuje da li je s.p. prazna ili ne.  2) osnovne operacije:            a) operacija pristupa – pristup je uočavanje i izdvajanje s.p. u cilju utvrđivanja njenog informacionog sadržaja. Pristup klasifikujemo na 3 vrste:- pristup prema poziciji – zahteva da se kao kriterijum zada mesto elementa. U s.p. moše da bude direktan ili implicitan. - asocijativni pristup – pristup prema informacionom sadržaju. Ovaj pristup ima naziv i traženje, a može biti uspešan i nespeša.- navigacija je proces sa memorijom. U s.p. se jedan element proglašava tekućim. On uvek postoji. Pristup se uvek izvršava  odnosu na tekući element, po nekom kriterijumu biramo sledeći element. b) uklanjanje elementa je operacija brisanja elementa iz strukture. Povezana je sa pristupom, jer se prvo mora pristupiti element da bi se obrisao. Uklanjanje nije definisano za sve strukture. c) dodavanje – kod dodavanje je najčešće potreban neuspešan pristup. Dodavanje nije uvek moguće. 3) osim globalnih postoji još jedna grupa operacija: a) pretraživanje            b) sortiranje    c) kopiranje d) spajanje dve ili više s.p. u jednu   e) razlaganje s.p. na dve ili više

 

 

24. Opšte osobine indeksnih struktura * Indeksne s.p. su statičke, tj. Pristup je dozvoljen za sve elemente, dok operacije dodavanja i uklanjanja nisu definisane.* Pristup se može ostvariti prema poziciji (direktno), prema informacionom sadržaju ili navigacijom (retko se koristi).* Redosled pristupa elementima je proizvoljan, tj. Ne zavisi od prethodno izvedenih operacija, nad strukturom.* Elementi u statičkim strukturama karakterišu se pozicijom kao glavnim identifikacionim obeležjem, a pozicija se određuje oznakkom pozicije koja može uzimati vrednost iz skupa sa uređenjem ili bez uređenja. Ukoliko je skup oznaka uređen, s.p. je indeksna s.p. * Kao opšta statička indeksna struktura uvodi se statički niz, koji predstavlja strukturu: A=(S(A), r(A)) sa sledećim osobinama: 1. svaki element osim tačno jednog, ima jednog neposrednog prethodnika 2. svaki element, osim tačno jednog, ima jednog neposrednog sledbenika 3. dozvoljen je pristup svakom elementu  4. uklanjanje i dodavanje nisu definisani  5. Pristup članovima niza ostvaruje se na bazi zadate pozicije pomoću oznake pozicije tj. Indeksa. Indeks je veličina iz skupa I={i1,...,in} između čijih elemenata pozicija postoji uzajamno jednoznačna veza. Mora postojati i mehanizam pomoću kog se za svaki indeks osim in određuje sledeći. Skup indeksa može biti bilo koji niz celih brojeva ili niz znakova sa susednim rednim (ordinalnim) brojevima.

 

25. Metoda linearizacije za fizičku realizaciju indeksnih struktura

* Nizovi čii su elementi vektori, vektori vektora itd. Su multi-indeksne ili višeindeksne strukture. Neke od multiindeksnih struktura su vektori i matrice. Vektor je indeksna struktura reda 1, a matrica reda 2.

* Metoda linearizacije je specifična za multi-indeksne s.p. zasnovana je na osobini ovih struktura da su adrese članova na poslednjem nivou (skalarnih članova) u potpunosti određene skupom indeksa, onako kako su npr. Elementi matrice određeni indeksima vrsta odnosno kolona. Linearizacijom se multi – indeksna struktura po nekom kriterijumu razbija na vektore (jednodimenzionalne strukture) koji zbog svoje linearnosti mogu biti smešteni tako da zauzmu sukcesivne memorijske lokacije. U slučaju matrice razbijanje može biti izvršeno po vrstama ili po kolonama.

 

26. Metoda Iliffe-ovih vektora za fizičku realizaciju indeksnih struktura - * Nizovi čii su elementi vektori, vektori vektora itd. Su multi-indeksne ili višeindeksne strukture. Neke od multiindeksnih struktura su vektori i matrice. Vektor je indeksna struktura reda 1, a matrica reda 2

* Osnovna ideja ove metode je da se po cenu povećanog utroška memorijskog prostora ostvari ubrzan pristup.

 

27.  Definicija, operacije i fizička realizacija sloga - * Indeksne s.p. su statičke, tj. pristup je dozvoljen za sve elemente, dok operacije dodavanja i uklanjanja nisu definisane.* Pristup se može ostvariti prema poziciji (direktno), prema informacionom sadržaju ili navigacijom (retko se koristi).* Redosled pristupa elementima je proizvoljan, tj. Ne zavisi od prethodno izvedenih operacija, nad strukturom.* Pod slogom podrazumevamo uređeni par R=(s(R), r(R))  r(R)={(x1,...,xn)}, n Ξ | S*R(, xi Є S(R)   (i≠j)<=>(xi≠xj)  Tj. U uređenoj n-torci koja čini r(R) nalae se svi elementi iz S(R) i nijedan se ne ponavlja.

* Elementi sloga se zovu polja. * Od osnovnih operacija:     - pristup poljima je direktan     - dodavanje i uklanjanje nisu predviđeni. Složenije operacije se mogu vršiti nad poljima ili na slogu kao celini. * Pristup se ostvaruje direktno preko naziva polja, koji je simbolički pojam, i ne podrazumeva nikakvo uređenje. Funkcija pristupa se predstavlja navođenjem sloga i naziva polja odvojenih tačkom: R.ime_polja * Fizička struktura sloga može biti sekvencijalna i spregnuta.  1) sekvencijalna realizacija – za smeštaj sloga u memoriji se odvaja kompaktan prostor u koji se upisuju polja uč celini. Informacije neophodne za rukovanje slogom smeštaju se u dekriptor: indikator (kod) tipa strukture, naziv sloga, broj polja, adresa početka memorijske zone (zajedničke osobine); i osobine za svako polje: tip strukture polja, dužina polja, naziv polja, apsolutna ili relativna adresa početka polja. (za pristup poljima koriste se relativne adrese početka polja koje služe za izračunavanje apsolutnih adresa početka polja – ovo je karakteristika sekvencijalne realizacije) 2) spregnuta realizacija – po izgledu deskriptora podseća na sekvencijalnurealizaciju sa apsolutnim adresama, samo što te apsolutne adrese nisu ni u kakvoj međusobnoj vezi jer su polja raspoređena proizvoljno u memoriji, a njihove početne adrese se nalaze u deskriptoru. U deskriptoru nisu posebno izdvojene dužine pojedinih polja.

 

28. Logička struktura i osnovne operacije nad stekom

* Stek spada u poludinamičke strukture podataka.

* Logička struktura steka je linearna struktura podataka.

Xn-àXn-1-àXi

Element Xn je na vrhu steka, a element Xi je na dnu steka.

* Sve tri osnovne operacije(pristup, dodavanje, uklanjanje) obavljaju se na istom mestu, na vrhu steka.* Glavna osobina steka je vidljivost samo prvog elementa, tj. elementa na vrhu steka.* LIFO (Last In Firs Out)* Logička operacija pristupa je TOP, logička procedura uklanjanja elemenata iz steka je POP, a logička procedura za dodavanje elemenata u stek je PUSH.*Osim osnovnih, nad stekom su definisane i sledeće operacije:- funkcija "prazan stek"; - proceedura pražnjenja steka;- funkcija za određivanje broja elemenata.

 

 

 

29. * Sekvencijalna fizička struktura steka podrazumeva korišćenje niza sukcesivnih  memorijskih lokacija za smeštanje njegovih elemenata. Pri tom se susedni elementi Xi i Xi+1 upisuju na susedne memorijske lokacije a i ai+1. Struktura se dopunjava deskriptorom koji sadrži sledeće informacije: -ST – indikator strukture podataka za stek;- L – identifikator  (ime) steka;- Amax – najveća adresa adresnog prostora steka;- vrh – adresa elementa na vrhu steka; - Amin – najmanja adresa adresnog prostora steka. CRTEZ!!

30. Spregnuta realizacija steka- * Kod ove strukture memorijski prostor namenjen jednom elementu se dopunjava pokazivačem (adresom sledećeg elementa steka po redu). Deskriptor steka, pored indikatora tipa, imena I opisa elemenata, sadrži još samo adrsu vrha.* Raspodela elemenata u memoriji je proizoljna s obzirom na logički redosled. * S obzirom da fizički redosled elemenata nema nikakvog značaja i da se za njihovo smeštanje mogu koristiti proizvoljne lokacije, ovde se problem prepunjenosti, teorijski, ne javlja, jer se za stek uvek može odvojiti dovoljno memorije. Međutim, zbog ovoga nešto duže traju operacije uklanjanja I dodavanja.

31. Primena steka za realizaciju rekurzivnih procedura I funkcija

* Izvršavanje rekurzivnih procedura pomoću steka izvodi se po šemi koja se sastoji iz tri dela:  1) prolog – u kom se parametri  poziva smeštaju u stek;            2) telo – u kom se vrti osnovna obrada uključujući i eventualni poziv rekurzivne procedure;        3) epilog – obuhvata čitanje parametara iz steka I povratak na viši nivo.

32. . Logička struktura I osnovne operacije nad redom- * Red je linearna struktura, dodavanje, uklanjanje i pristup se vrše na krajevima. Pristup i uklanjanje se vrše na jednom kraju (početak), a dodavanje na suprotnom (kraj). * Red je FIFO (First In First Out) * Osnovna logička struktura reda je:  F=(S(F),r(F))  gde je: S(F)={x1,x2,...,xn}  / {(Xi,Xi+1) | i=1,...,n-1}   n>1  r(F)={  \    0    n<=1                                                         Element Xi je na početku reda, a Xn je na kraju reda.  * Pristup je dozvoljen samo elementu X1. Funkcija pristupa je front. Ukloniti se može samo element X1 na početku reda. Procedura za klanjanje elementa je OutQueue. Elementi se dodaju isključivo iza Xn, a precedura je InQueue.

* Pored osnovnih, postoje i sldeće operacije:- provera da li je red prazan; - uklanjanje svih elemenata;- odredjivanje broja elemenata.

33. Sekvencijalna fizička realizacija reda { slika}

- RD – indikator strukture reda;   F – ime reda;- A max – najveća adresa memorijskog prostora; - prvi – adresa početka reda;- A min – najmanja adresa memorijskog prostora;- poslednji – adresa elementa na kraju reda;- Opis elem. – opis elementa reda.* Sekvencijalna struktura reda karakteristična je po jednoj pojavi; stanju prepunjenosti reda, čiji memorijski prostor nije do kraja zauzet. Da bi se prevladala ova poteškoća dovoljno je obezbediti mehaniyam za nesmetano pomeranje reda, što se postiže tzv. cirkularnom fizičkom strukturom.

34. Definicija, operacije i fizička realizacija Deka  * Dek je linearna struktura, a pristup, uklanjanje i dodavanje dozvoljeni su na oba kraja. Nema prvog i poslednjeg, jer su ravnopravni. Postoje krajnji levi i krajnji desni element. * Osnovne operacije su: 1) pristup krajnjem levom elementu;2) pristup krajnjem desnom elementu;3) uklanjanje krajnjeg levog elementa;4) uklanjanje krajnjeg desnog elementa;5) dodavanje na levom kraju;    6) dodavanje na desnom kraju.  * Fizička struktura može biti sekvencijalna ili spregnuta.  - Kod sekvencijalna može doći do pseudoprepunjenosti, koja se eliminiše cikličkom realizacijom (kao kod reda).             - Kod spregnute realizacije u deskriptoru stoje adrese oba kraja, a u elementima se memorišu dva pokazivača. Jedan pokazivač ukazuje na levog suseda, a drugi na desnog suseda. Njihove vrednosti su prazne (NIL) za krajnji levi i krajnji desni element.

 

35. Definicija, operacije i fizička realizacija sekvence- * Sekvenca je definisana kao uređeni par: D=(S(D),T(D)), sa sledećim osobinama:   1) struktura je linearna;         2) dozvoljen je pristup svakom elementu; 3) ukloniti se mogu samo svi elementi odjednom;      4) novi element se dodaje isključivo iza poslednjeg elementa. * Sekvenca se fizički realizuje kao spregnuta struktura, ali takva da jedan element spregnute strukture (blok) sadrži u sebi više elemenata sekvence. Unutar bloka elementi se organizuju sekvencijalno. Fizičke operacije se izvršavaju na dva nivoa: prvo na nivou bloka, a zatim na nivou elementa unutar bloka.

 

36. Logička struktura i osnovne operacije nad jednostruko spregnutom listom - * Liste se dele na:  1) jednostruko spregnute liste (linearne); 2) dinamičke nizove; 3) dvostruko spregnute liste; 4) višestruke liste. * Jednostruko spregnuta lista P=(S(P),r(P)) je struktura podataka sa osobinama:         1) linearna je struktura, tj. svaki element osim jednog ima tačno jednog prethodnika/sledbenika; 2) dozvoljen je pristup svakom elementu;       3) moguće je ukloniti bilo koji element;       4) ozvoljeno je dodati element na proizvoljnoj poziciji.

 

38. Dvostruko spregnute liste i višestruko spregnute liste * Dvostruko spregnute (simetrične) liste predstavljaju uopštenje jednostruko spregnutih lista, takvo da se uz svaku vezu oblika (a,b) uvodi i veza “u obrnutom smeru” tj. veza (b,a), tako da su susedni elementi povezani preko relacije u oba smera. * Razlika u pogledu osnovnih operacija i fizičke strukture svodi se na potrebu održavanja veza u oba smera.* Višestruke (multi liste) linearno povezuju elemente, ali u skladu sa većim brojem kriterijuma. * Osnovne operacije i fizička struktura grade se na istim načelima kao kod jednostruko spregnutih lista. Kod fizičke strukture svaki element mora imati predviđen prostor za sve pokazivače bez obzira da li je član svake relacije ili ne.

 

 

 

37. Dinamički niz i string - * Dinamički niz je linearna struktura, kod koje se pristup ostvaruje direktno, preko indeksa (kao kod vektora), a definisano je dodavanje i uklanjanje elementa na svakoj poziciji.* Osnovne operacije obuhvataju:           1) pristup prema informacionom sadržaju 2) pristup prema poziciji       3) dodavanje jednog ili više elemenata odjednom 4) brisanje jednog ili grupe elemenata. * Fizička struktura dinamičkih nizova je sekvencijalna. Postoji i ograničenje u pogledu maksimalnog broja elemenata koji je određen veličinom dodeljene memorijske zone.  * Najvažnija primena dinamičkog niza je vezana za mehanizam rukovanja tekstom u programskim jezicima. * String je niz znakova promenljive dužine koji se može obrađivati kao celina, po znakovima ili po delovima (podstringovima).

 

39. N-arno stablo: definicije i osnovne operacije  * N-arno stablo se definiše kao skup elemenata i niz relacija. N-arno stablo je uređena n+1-torka: Tn=(S(Tn), r1(Tn), ..., rn(Tn)) sa sledećim osobinama: 1) (S(Tn), r1r2...rn) je stablo; 2) element je vezan sa svojim podređenim obavezno različitim relacijama;             3) dozvoljen je pristup svim elementima; 4) uklanjanje i dodavanje se vrši tako da se ne naruši struktura. * Operacije: 1) sledeći; 2) primitivna funkcija koren, koja za rezultat daje koren stabla; 3) najvažniji je pristup prema informacionom sadržaju počev od korena;  4) dodavanje i uklanjanje – algoritmi se međusobno razlikuju u zavisnosti od namene n-arnog stabla.

 

40. Binarno stablo: definicija i metode obilaska - * Binarno stablo je n-arno stablo gde je n=2   B=(S(B), levi, desni). Umesto uopštenih naziva funkcija r1 i r2 upotrebljavaju se levi i desni. * Obilazak binarnog stabla je operacija pristupa svim njegovim elementima. Postoji više varijanti postupka, a vezane su za redosled obilaska tri podstrukture: nadređenog elementa, levog podstabla i desnog podstabla. 1. obilazak sa vrha ka dnu:  a. pristupiti nadređenom; b. pristupiti levom podstablu; c. pristupiti desnom podstablu. 2. obilazak sa dna ka vrhu: a. pristupiti levom podstablu; b. pristupiti desnom podstablu; c. pristupiti nadređenom.       3. obilazak s leva u desno: a. pristupiti levom podstablu; b. pristupiti nadređenom; c. pristupiti desnom podstablu.

Komentari (0)Add Comment

Napišite komentar

busy
 
seminarski