Konstrukcija i analiza algoritama odgovori na pitanja. Anja Bukurov Nikola Ajzenhamer Vojislav Stanković 11. juni 2015.

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Konstrukcija i analiza algoritama odgovori na pitanja. Anja Bukurov Nikola Ajzenhamer Vojislav Stanković 11. juni 2015."

Transcript

1 Konstrukcija i analiza algoritama odgovori na pitanja Anja Bukurov Nikola Ajzenhamer Vojislav Stanković 11. juni

2 Sadržaj 1 Pravila izvođenja, valjani dokazi, rezolucija. Pravila izvođenja sa kvantifikatorima. 4 2 Metodi dokazivanja teorema; teoreme sa kvantifikatorima primeri Metodi dokazivanja teorema Dokazivanje teorema sa kvantifikatorima Primeri dokaza matematičkom indukcijom; Ojlerova formula V + F = E Ojlerova formula: V + F = E Nalaženje binarnih cifara celog broja, dokaz korektnosti. 8 5 Analiza algoritama, O notacija, vremenska i prostorna složenost 8 6 Asimptotsko ponašanje rešenja rekurentne relacije T (n) = at (n/b) + cn k. 9 7 Rešenje rekurentne relacije T (n) = 2 n n T (i) + n 1, n 2, i=1 T (1) = 0 (prosečna složenost algoritma kvik sort) 10 8 Pohlepni (greedy) algoritmi; primer: nalaženje Hofmanovog koda 12 9 Izračunavanje vrednosti polinoma Nalaženje maksimalnog indukovanog podgrafa grafa sa stepenovima čvorova ne manjim od zadatog broja Nalaženje maksimalnog podskupa S A datog skupa A na kome je zadata funkcija f : A A sa osobinom Algoritam za nalaženje takvog i da su u kvadratnoj 0 1 matrici svi elementi i te vrste (sem i tog) 1, i svi elementi i te kolone (sem i tog) Računanje svih faktora ravnoteže binarnog stabla Nalaženje maksimalnog (uzastopnog) podniza datog niza realnih brojeva Binarna pretraga, primeri primene; interpolaciona pretraga Binarna pretraga, primeri primene Interpolaciona pretraga Istovremeno nalaženje najmanjeg i najvećeg elementa u nizu Nalaženje k-tog najmanjeg od n zadatih brojeva Nalaženje dve najbliže tačke u datom skupu od n tačaka u ravni Dinamičko programiranje, problem ranca Algoritam za nalaženje edit rastojanja dva niza i približno trazenje reči u tekstu KMP algoritam za nalaženje jednog stringa u drugom Izračunavanje pomoćnog niza za algoritam KMP Heš tablice Struktura podataka pogodna za problem nalaženja unije Predstavljanje grafova: matrica povezanosti, lista povezanosti Nalaženje Ojlerovog ciklusa u povezanom neusmerenom grafu. 35 2

3 26 Pretraga u dubinu neusmerenog grafa Pretraga grafa u širinu Topološko sortiranje acikličkog grafa Nalaženje svih najkraćih puteva iz zadatog čvora grafa aciklički slučaj Nalaženje svih najkraćih puteva iz zadatog čvora grafa Minimalno povezujuće stablo grafa Nalaženje svih najkraćih puteva u grafu Tranzitivno zatvorenje grafa Stepenovanje prirodnim brojem Euklidov algoritam Vinogradov i Štrasenov algoritam za množenje matrica Brza Fruijeova transformacija i množenje polinoma Direktna Furijeova transformacija Inverzna Furijeova transformacija Algoritam za nalaženje trouglova u neusmerenom grafu, dobijen svodenjem na množenje matrica Redukcije polinomijalne vremenske složenosti, tranzitivnost Nedeterministički algoritmi, Kukova teorema Kukova teorema Dokaz NP kompletnosti problema nalaženje pokrivača čvorova grafa Dokaz NP kompletnosti problema nalaženje dominirajućeg skupa grafa Dokaz NP kompletnosti problema 3 SAT Dokaz NP kompletnosti problema klika Dokaz NP-kompletnosti problema 3-obojivosti grafa Mogući kompromisi prilikom rešavanja teških (NP kompletnih) problema; pretraga sa vraćanjem, 3 bojenje grafa Grananje sa odsecanjem, primena na bojenje grafa Približni algoritam za nalaženje pokrivača grana na osnovu maksimalnog uparivanja Približni algoritmi za rešavanje 1 D problema pakovanja Približni algoritmi za rešavanje Euklidskog problema trgovačkog putnika. 65 3

4 1 Pravila izvođenja, valjani dokazi, rezolucija. Pravila izvođenja sa kvantifikatorima. Pravila izvođenja predstavljaju osnovu ispravnog zaključivanja. Neka od pravila izvođenja su: Ime Pravilo Pravilo zadato tautologijom 1 Modus ponens p p = q (p (p = q)) = q q 2 Dodavanje p p q p = (p q) 3 Uprošćavanje p q p (p q) = p 4 Konjunkcija p q (p q) = (p q) p q 5 Modus tolens q p = q ( q (p = q)) = p p 6 Hipotetički silogizam p = q q = r ((p = q) (q = r)) = (p = r) p = r 7 Disjunktivni silogizam p q p ((p q) p) = q q 8 Rezolucija p q p r q r ((p q) ( p r)) = (q r) Pravila izvodenja sa kvantifikatorima: Ime 1 Univerzalna specijalizacija 2 Univerzalna generalizacija 3 Egzistencijalna specijalizacija 4 Egzistencijalna generalizacija Pravilo xp (x) P (c) P (c) xp (x) xp (x) P (c) P (c) xp (x) 2 Metodi dokazivanja teorema; teoreme sa kvantifikatorima primeri. 2.1 Metodi dokazivanja teorema Dokazi se odnose na teoreme oblika p = q. Direktni dokaz (najjednostavnije) Kreće se od pretpostavke da je p tačno i pokazuje se da je i q tačno. Primer:,,Ako je n neparan, onda je i n 2 neparan broj. Dokaz: Pošto je n neparan, može se zapisati u obliku n = 2 k + 1. Onda je n 2 = (2 k + 1) 2 = 4 k k + 1 = 2 (2 k k) + 1, i to je takode neparan broj. 4

5 Indirektni dokaz Umesto implikacije p = q dokazujemo njenu kontrapoziciju, odnosno q = p. Primer:,,Ako je 3 n + 2 neparan, ona je i n neparan broj. Dokaz: Pretpostavimo suprotno, n je paran broj i možemo ga zapisati u obliku n = 2 k. Onda je 3 n + 2 = 3 (2 k) + 2 = 2 (3dotk + 1). To je paran broj, što znači da je q = p tačno, pa je tačno i p = q. Prazan dokaz Ako je p netačno, implikacija p = q će uvek biti tačna. Primer: P (n):,,ako je n > 1, onda n 2 > n. Dokazati P (0). Trivijalan dokaz Ako je q tačno, implikacija p = q će uvek biti tačna. Primer: P (n):,,ako je a, b N, a b, onda a n b n. Dokazati P (0). Dokaz izvodenjem kontradikcije Tvrdenje p dokazujemo tako što pretpostavimo suprotno, tj. da je tačno p i iz toga izvedemo kontradikciju. Primer:,, 2 je iracionalan broj. Dokaz: Pretpostavimo suprotno, 2 je racionalan broj. To znači da se može napisati kao skraćen (nesvodljiv) razlomak. a 2 = b / b b 2 = a/ 2 2 b 2 = a 2 = a 2 je paran broj, pa je i a paran i možemo ga zapisati u obliku a = 2 k! 2 b 2 = (2 k) 2 2 b 2 = 4 k 2 / : 2 b 2 = 2 k 2 = b 2 je paran broj, pa je i b paran broj. Ako su i a i b parni brojevi znači da razlomak a nije skraćen. Dakle, pretpostavka je pogrešna! b Dokaz razmatranjem slučajeva Tvrdenje oblika (p 1... p n ) = q dokazujemo tako što pokazujemo da vazi: p 1 = q... p n = q. Primer:,,Dokazati da važi nejednakost trougla: x + y x + y. Dokaz: 1. x 0 y 0: x + y = x + y, x + y = x + y 2. x < 0 y < 0: x + y = (x + y), x + y = x y = (x + y) 3. x 0 y < 0: x + y = x y (a) x < y : x + y = (x + y) = x y x y x 0 (b) x > y : x + y = x + y = x + y x y y 0 4. x < 0 y 0: x + y = x + y (a) x < y : x + y = x + y = x + y x + y x 0 (b) x > y : x + y = (x + y) = x y x + y y 0 Dokaz ekvivalentnosti Tvrdenje oblika p q dokazujemo tako što dokazujemo p = q i q = p. Primer:,,Sledeća tri tvrđenja su ekvivalentna: P 1 :,,n je paran. P 2 :,,n 1 je neparan. P 3 :,,n 2 je paran. 2.2 Dokazivanje teorema sa kvantifikatorima Prva tri dokaza odnose se na teoreme sa kvatifikatorom, a četvrta na teoreme sa kvantifikatorom. Konstruktivni dokaz Treba pronaći neko a, tako da je P (a) tačno. Primer:,,Dokazati da postoji n N koji se može napisati na 2 načina kao zbir 2 kuba. Dokaz: 1729 = =

6 Nekonstruktivni dokaz Treba pokazati da postoji a, tako da je P (a) tačno, ali se a ne pronađe konkretno. Primer:,,Dokazati da postoje x, y I takvi da je x y racionalan broj. Dokaz: Neka je x = 2, y = 2, i a = x y = 2 2. Ako je a racionalan, onda je to kraj dokaza. Ako je a iracionalan, onda uzmemo da je x = 2, 2 a y = 2. ( 2 ) 2 2 Onda je a = = ( 2) 2 2 = ( 2) 2 = 2 Q. U oba slučaja dobijamo da je a racionalan broj, ali ne znamo koji od ta dva slučaja imamo, nismo konkretno odredili i zato je to nekonstruktivan dokaz. Dokaz jedinstvenosti xp (x) y((y x) = P (x)). Primer:,,Svaki celi broj ima jedinstveni aditivni inverz. Dokaz: x ima inverz x i x. Onda važi: x + x = 0 i x + x = 0 x = x + 0 = x + (x + x ) = (x + x) + x = 0 + x = x Kontraprimeri Dovoljno je pronaći jedno a takvo da P (a) bude netačno. Primer:,,Svaki prirodan broj je zbir 3 kvadrata. Dokaz: 7 = x 2 + y 2 + z 2, x y z. Najveći vrednost koju mogu da uzmu ovi brojevi je 2, jer je 3 2 = 9. Moramo imati bar jednu 2, jer = 3. Ne možemo imati dve 2, jer je = 9 > 7. Preostaje nam da napravimo kombinaciju od dve 1 i jedne 2, a to je = 6. 3 Primeri dokaza matematičkom indukcijom; Ojlerova formula V + F = E + 2 Primer: Formirajmo trougao Slika 1: Trougao neparnih brojeva. Koliki je zbir brojeva u i-tom redu? U 1. redu je 1, u 2. redu je 8, u 3. redu je 27, u 4.redu je Pretpostavimo da je zbir elemenata u i-tom redu, S i jednak: S i = i 3 Slika 2: Slikoviti prikaz ideje rešenja. S i+1 = S i + i 2i + a i+1 (i + 1) 3 = i 3 + 2i 2 + a i+1 6

7 Ostaje da se dokaže da je odnosno a i+1 = i 3 + 3i 2 + 3i + 1 i 3 2i 2 = i 2 + 3i + 1 = (i + 1) 2 + (i + 1) 1 a i = i 2 + i 1 Dokaz (indukcijom po i) Baza Indukcije: i = 1; a i = = 1 I.H. : Pretpostavimo da je tačno a i = i 2 + i 1 I.H. I.K. : Iz konstrukcije se vidi a i = 2(i + 1) + a i = 2i i 2 + i 1 = i 2 + 3i + 1 = (i + 2) 2 + (i + 1) 1 Primer: Dokazati da je n < 1 Dokaz (indukcijom po n) 1 Baza Indukcije: n = 1 2 < 1 I.H. : važi za n I.K. : n n+1 = ( n ) I.H. < = Ojlerova formula: V + F = E + 2 Povezana planarna mapa V -broj čvorova E -broj grana F -broj oblasti (računa se i spoljašnja/beskonačna oblast) Dokaz (indukcijom po F) B.I. : F = 1 - beskonačna oblast V = E + 1 Poddokaz: (indukcijom po V) B.I. : V = 1 E = 0 1 = I.H. : Pretpostavimo da je tačno za V = n I.K. : Dokazati da je tačno za V = n + 1 U stablu sa n + 1 čvrova mora da postoji bar jedan viseći čvor. Za to stablo važi: V = n + 1 E Nakon skidanja jednog visećeg čvora i grane, dobijamo stablo sa V = V 1, E = E 1 To stablo zadovoljava V = E + 1 po induktivnoj hipotezi. Zamenom dobijamo: V = E + 1 V 1 = E V = E + 1 I.H. : Za povezanu planarnu mapu, ako je F = m onda je V + F = E + 2 I.K. : Posmatramo povezanu planarnu mapu sa F = m + 1 oblašću, V čvorova i E grana. Uklanjanjem grane koja je susedna sa beskonačnom oblasti dobijamo mapu sa brojem oblasti F = F 1; takode, važi V = V, E = E 1 i za nju važi induktivna hipoteza V + F = E + 2 V + F 1 = E V + F = E + 2 7

8 4 Nalaženje binarnih cifara celog broja, dokaz korektnosti. Algoritam koji predstavlja binarnu reprezentaciju broja n Binarne cifre broja n Begin t = n k = 0 while (t>0) do k = k+1 b[k] = t mod 2 t = t/2 end Invarijanta petlje: t 2 k + b[1] + b[2] b[k] 2 k 1 = n Dokaz korektnosti: (indukcijom po n) B.I. : k = 0 n+ ništa = n I.H. : t 2 k + b[1] + b[2] b[k] 2 k 1 = n I.K. : U narednom prolasku kroz petlju k = k+1 t = t/2 b[k+1] = t mod 2 Zbir je sada Pri izlazu iz petlje, za t = 0, dobija se b[1] + b[2] b[l] 2 l = n Dobija se ispravan izlaz. (t/2) 2 k+1 + b[1] + b[2] b[k] 2 k 1 + (tmod2) 2 k = 2 k (2(t2) + tmod2) + b[1] + b[2] b[k] 2 k 1 = t 2 k + b[1] + b[2] b[k] 2 k 1 = n 5 Analiza algoritama, O notacija, vremenska i prostorna složenost Cilj analize algoritama je da proceni brzinu izvršavanja algoritma bez obzira na to koji računar ga koristi. Ideja je da se proceni brzina rada bez realizacije. Tačno ponašanje algoritma je nemoguće predvideti sem u najjednostavnijim slučajevima. Analiza algoritma mora biti približna. Ona omogućava poređenje algoritama koji rešavaju isti problem. Zanemaruju se konstantni faktori zato što se i izvršavanja na različitim računarima razlikuju za konstantu. Najinteresantnija je asimptotska analiza algoritama, odnosno kada veličina ulaza teži jako velikim vrednostima. Obično se veličina ulaza opisuje kao memorijski prostor koji je neophodan za korišćenje algoritma. Najčešće se koristi analiza najgoreg slučaja. Trajanje algoritma predstavlja funkciju u zavisnosti od ulazne veličine. Analiza asimptotskog ponašanja složenosti algoritma, i to u najgorem slučaju među ulazima određene veličine to je dakle aproksimacija vremena rada određenog algoritma na određenom ulazu, koja ipak najčešće dobro karakteriše osobine algoritma. Definicija 1: Neka su f i g pozitivne funkcije od argumenta n iz skupa N prirodnih brojeva. Kaže se da je g(n) = O(f(n)) ako postoje pozitivne konstante c i N, takve da za svako n > N važi g(n) cf(n). Oznaka O(f(n)) se ustvari odnosi na klasu funkcija, a jednakost g(n) = O(f(n)) je uobičajena oznaka za inkluziju g(n) O(f(n)). Jasno je da je funkcija f samo neka vrsta gornje granice za funkciju g. Na primer, pored jednakosti 5n = O(n 2 ) (jer je 5n n 2 za n 4) važi i jednakost 8

9 5n = O(n 3 ) (jer je 5n n 3 za n 6). Ova notacija omogućuje ignorisanje multiplikativnih i aditivnih konstanti: umesto O(5n + 4) može se pisati O(n). Slično, u izrazu O(log n) osnova logaritma nije bitna, jer se logaritmi za različite osnove razlikuju za multiplikativnu konstantu: log a n = log a (b log b n ) = log b n log a b. Specijalno, O(1) je oznaka za klasu ograničenih funkcija. Lako se pokazuje da se O-izrazi mogu sabirati i množiti: O(f(n)) + O(g(n)) = O(f(n) + g(n)), O(f(n))O(g(n)) = O(f(n)g(n)). Drugi problem u vezi sa složenošću algoritma je pitanje donje granice za potreban broj računskih operacija. Dok se gornja granica odnosi na konkretan algoritam, donja granica složenosti odnosi se na proizvoljan algoritam iz neke određene klase. Zbog toga ocena donje granice zahteva posebne postupke analize. Definicija 2: Za funkciju g(n) kaže se da je asimptotska donja granica funkcije T (n) i piše se T (n) = Ω(g(n)), ako postoje pozitivni c i N, takvi da za svako n > N važi T (n) > cg(n). Tako je na primer n 2 = Ω(n 2 100), i n = Ω(n 0,9 ). Vidi se da simbol Ω odgovara relaciji. Definicija 3: Ako za dve funkcije f(n) i g(n) istovremeno važi i f(n) = O(g(n)) i f(n) = Ω(g(n)), onda one imaju iste asimptotske brzine rasta, što se označava sa f(n) = Θ(g(n)). Tako je na primer 5n log 2 n 10 = Θ(n log n), pri čemu je u poslednjem izrazu osnova logaritma nebitna. Definicija 4: f(n) Činjenica da je lim = 0 označava se sa f(n) = o(g(n)). n g(n) Ocena (vremenske) složenosti algoritma sastoji se u brojanju računskih koraka koje treba izvršiti. Međutim, termin računski korak može da podrazumeva različite operacije, na primer sabiranje i množenje, čije izvršavanje traje različito vreme. Zato se obično u okviru algoritma izdvaja neki osnovni korak, onaj koji se najčešće ponavlja. Tako, ako se radi o sortiranju, osnovni korak je upoređivanje. Ako je broj upoređivanja O(f(n)), a broj ostalih operacija je proporcionalan broju upoređivanja, onda je O(f(n)) granica vremenske složenosti algoritma. Pod prostornom složenošću algoritma podrazumeva se veličina memorije potrebne za izvršavanje algoritma, pri čemu se prostor za smeštanje ulaznih podataka najčešće ne računa. Kao i kod vremenske složenosti, i za prostornu složenost se najčešće traži njeno asimptotsko ponašanje u najgorem slučaju, za velike veličine problema. Prostorna složenost O(n) znači da je za izvršavanje algoritma potrebna memorija proporcionalna onoj za smeštanje ulaznih podataka. Ako je pak prostorna složenost algoritma O(1), onda to znači da je potreban memorijski prostor za njegovo izvršavanje ograničen konstantom, bez obzira na veličinu ulaza. 6 Asimptotsko ponašanje rešenja rekurentne relacije T (n) = at (n/b) + cn k. Pretpostavimo da nam je cilj analiza algoritma A, pri čemu broj operacija T (n) pri primeni algoritma A na ulaz veličine n (vremenska složenost) zadovoljava diferencnu jednačinu tipa ( n ) T (n) = at + cn k (1) b pri čemu je a, b, c, k 0, b 0, i zadata je vrednost T (1). Ovakva jednačina dobija se za algoritam kod koga se obrada ulaza veličine n svodi na obradu a ulaza veličine n/b, posle čega je potrebno izvršiti još cn k koraka da bi se od parcijalnih rešenja konstruisalo rešenje kompletnog ulaza veličine n. Jasno je zašto se za ovakve algoritme kaže da su tipa zavadi pa vladaj, (divide-and-conquer), kako se još zovu algoritmi zasnovani na dekompoziciji. Obično je u ovakvim diferencnim jednačinama b prirodan broj. 9

10 Asimptotsko ponašanje niza T (n), rešenja diferencne jednačine (7) dato je jed- Master teorema: nakošću O(n log b a ) za a > b k T (n) = O(n k log n) za a = b k (2) O(n k ) za a < b k : Dokaz teoreme biće sproveden samo za podniz n = b m, gde je m celi nenegativni broj. Pomnoživši obe strane jednakosti (7) sa a m /c, dobijamo diferencnu jednačinu tipa (5) t m = t m 1 + q m, t 0 = 1 c T (1), gde su uvedene oznake t m = 1 c a m T (b m ) i q = b k /a. Njeno rešenje je: Za q 1 je jednakostima m i=1 t m = t 0 + m i=1 q i = (1 q m+1 )/(1 q) 1, pa se asimptotsko ponašanje niza t m opisuje sledećim O(m) za q = 1 t m = O(1) za 0 < q < 1 O(q m ) za q > 1 (3) Pošto je T (b m ) = ca m t m, n = b m, odnosno m = log b n, redom se za 0 < q < 1 (b k < a), q = 1 (b k = a, odnosno log b a = k) i q > 1 (b k > a) dobija O(a m ) = O(b m log b a ) = O(n log b a ) za a > b k T (n) = O(ma m ) = O(log b n n log b a ) = O(n k log n) za a = b k (4) O((aq) m ) = O(b mk ) = O(n k ) za a < b k čime je tvrđenje teoreme dokazano. 7 Rešenje rekurentne relacije T (n) = 2 n n T (i) + n 1, n 2, T (1) = 0 (prosečna složenost algoritma kvik sort) Diferencna jednačina najopštijeg oblika F n = f(f n 1, F n 2,..., F 1, n) zove se potpuna rekurzija ili diferencna jednačina sa potpunom istorijom. Razmotriémo jedan primer ovakvih diferencnih jednačina. Diferencna jednačina i=1 T (n) = n n 1 T (i), n 2, T (1) = 0 (5) n i=1 važna je, jer se do nje dolazi pri analizi prosečne složenosti sortiranja razdvajanjem, algoritma za uređivanje zadatog skupa brojeva po veličini (sortiranje, videti u knjizi pod 5.3.4). Ideja o,,eliminaciji istorije može se i ovde primeniti zbog toga je zgodno prepisati zadatu jednačinu tako da se u njoj uz sumu n 1 T (i) ne pojavljuje promenljivi činilac n: i=1 n 1 nt (n) = n(n 1) + 2 T (i). Zatim ovu jednakost treba oduzeti od one koja se od nje dobija zamenom n sa n + 1: (n + 1)T (n + 1) nt (n) = (n + 1)n + 2 n i=1 10 i=1 n 1 T (i) n(n 1) 2 T (i) = 2n + 2T (n), i=1

11 odnosno T (n + 1) = 2n n n + 2 n + 1 T (n), n 2 Ovim je prvi cilj postignut: dobijena diferencna jednačina povezuje samo dva uzastopna člana niza. Rešavanje ove diferencne jednačine može se svesti na poznat problem rešavanja F (n + 1) F (n) = f(n) deljenjem sa n + 2 i smenom t n = T (n)/(n + 1): odnosno T (n + 1) n + 2 T (n) n + 1 = 2n (n + 1)(n + 2), t n+1 t(n) = 2n (n + 1)(n + 2). Zamenom n sa i i sumiranjem po i u granicama od 1 do n dobija se (t 1 = 0) t n+1 t n = n i=1 2i (i + 1)(i + 2). (6) Da bi se izračunala suma sa desne strane ove jednakosti, može se njen opšti član razložiti na parcijalne razlomke 2i (i + 1)(i + 2) = A i B i + 2, gde se nepoznati koeficijenti A i B dobijaju tako što se u identitetu 2i = A(i + 2) + B(i + 1) stavi najpre i = 1 (dobija se A = 2), a onda i = 2 (odakle je B = 4). Sada je tražena suma jednaka n n = 2 i=1 = 2 i=3 i=1 1 n i i=1 n+1 1 i + 2 = 2 i=2 n+2 1 i + 4 i=3 1 i = 1 i = 2H(n + 1) 4 + n + 2 n + 2, gde je sa H(n) = n i=1 ( ) 1 1 i = ln n + γ + O, (7) n označena parcijalna suma harmonijskog reda; γ 0, 577 je Ojlerova konstanta. Zamenom vrednosti sume u (6) dobija se rešenje diferencne jednačine (5) ( T (n + 1) = 2H(n + 1) ) (n + 2) = 2(n + 1)H(n + 1) 4(n + 1), n + 2 odnosno T (n) = 2nH(n) 4n = 2n ln n + (2γ 4)n + O(1) = O(n log n). (8) U toku izvođenja korišćen je poznati asimptotski razvoj (7). Često je korisno znati i asimptotski razvoj za n!, Stirlingovu formulu n! = 2 ( n ) ( ( )) n 1 2πn 1 + O, e n odnosno log(n!) = O(n log n). (9) 11

12 8 Pohlepni (greedy) algoritmi; primer: nalaženje Hofmanovog koda Zadat je tekst sa n različitih znakova, tako da su učestanosti znakova zadate nizom F = f 1, f 2,..., f n. Odrediti prefiksni kod E koji minimizira broj bita L(E, F ) upotrebljenih za kodiranje. Slika 3: Predstavljanje prefiksnog koda stablom. Za prefiksni kod koji minimizira vrednost L(E, F ) kaže se da je optimalni kod; on očigledno zavisi od niza učestanosti znakova F. Cilj je za dati niz F odrediti optimalni prefiksni kod (bilo koji; u opštem slučaju postoji više različitih optimalnih kodova). Razmotrimo zbog toga malo detaljnije osobine optimalnih kodova: 1. Ako je f 1 > f 2, onda je l 1 l 2 (jer bi u protivnom, za l 1 > l 2 važilo da je (f 1 f 2 )(l 1 l 2 ) > 0, odnosno f 1 l 1 + f 2 l 2 > f 1 l 2 + f 2 l 1 što znači da bi broj bitova za prva dva slova bio veći od broja bitova ako zamenimo kodove, što je suprotno pretpostavci da se radi o optimalnom kodu) 2. U kodnom stablu, svaki unutrašnji čvor mora da ima oba sina, u protivnom bi se kod mogao pojednostaviti skraćivanjem kodnih reči u listovima podstabla ispod čvora sa samo jednim sinom (pogledati sliku 4) 3. Postoji optimalni kod u kojem su dva najređa slova u poslednjem nivou i sinovi istog oca (pogledati sliku 5) Slika 4: Kodno stablo u kome neki čvor ima samo jednog sina što nije kodno stablo optimalnog koda. 12

13 Slika 5: Transformacija kodnog stabla, posle koje dva znaka sa najmanjim frekvencijama f i i f j postaju sinovi istog oca. Realizacija. Operacije koje se izvršavaju prilikom formiranja Hofmanovog koda su umetanje u strukturu podataka, brisanje dva znaka sa najmanjim frekvencijama iz strukture, i konstrukcija kodnog stabla. Hip je pogodna struktura podataka za prve dve operacije, jer se tada te operacije u najgorem slučaju izvršavaju za O(log n) koraka. Algoritam za formiranje Hofmanovog koda glasi: Algoritam Hofman(S, F); Ulaz: S (string znakova koji se pojavljuju u tekstu) i F (frekvencije). Izlaz: T (kodno stablo Hofmanovog koda za S). ubaciti sve znake u hip H prema njihovim frekvencijama; while H neprazan do if H sadrži samo jedan znak X then formiraj stablo T koje ima samo koren, čvor X else skini sa hipa H znakove X, Y sa najmanjim frekvencijama fx, fy; zameni X i Y novim znakom Z sa frekvencijom fz = fx + fy; ubaci Z u hip H; poveži X i Y tako da budu sinovi Z u T; {Z još nema oca} end Primer: Neka je dat fajl u kome se pojavljuju znaci A, B, C, D, E i F sa frekvencijama redom 5, 2, 3, 4, 10 i 1. Dva znaka sa najmanjim frekvencijama su F i B; oni se zamenjuju novim znakom BF sa frekvencijom = 3. Dalja zamenjivanja prikazana su u sledećoj tabeli. Slika 6: Dobijeno kodno stablo. 13

14 Slika 7: Stablo Hofmanovog koda iz primera. Složenost. Složenost dodavanja novog čvora stablu ograničena je konstantom. Umetanja i brisanja iz hipa izvršavaju se u O(log n) koraka. Složenost algoritma je dakle O(n log n). 9 Izračunavanje vrednosti polinoma Napomena: U nastavku će biti prikazan najoptimalniji algoritam za izračunavanje vrednosti polinoma. Konsultovati se sa profesorovom knjigom za ostale (manje efikasne) algoritme. Problem. Dati su realni brojevi a n, a n 1,..., a 1, a 0 i realni broj x. Izračunati vrednost polinoma P n (x) = n a i x i. i=0 Induktivna hipoteza. Umemo da izračunamo vrednost polinoma P n 1(x) sa koeficijentima a n, a n 1,..., a 1 u tački x. Ovakva induktivna hipoteza je pogodna jer se lako proširuje. Pošto je P n (x) = x P n 1(x) + a 0, za izračunavanje P n (x) polazeći od P n 1(x) dovoljno je jedno množenje i jedno sabiranje. Izračunavanje se može opisati sledećim izrazom: a n x n + a n 1 x n a 1 x + a 0 = ((...((a n x + a n 1 )x + a n 2 )...)x + a 1 )x + a 0, poznatim kao Hornerova šema. Algoritam Vrednost_polinoma(a, x); Ulaz: a (niz koeficijenata polinoma) i x (realni broj); Izlaz: P (vrednost polinoma u tački x); P = a[n]; for i = 1 to n do P = x * P + a[n-i]; end Složenost. Telo for petlje izvršava se n puta za vreme O(1), pa je stoga složenost O(n). 10 Nalaženje maksimalnog indukovanog podgrafa grafa sa stepenovima čvorova ne manjim od zadatog broja Neka je G = (V, E) neusmereni graf. Graf H = (U, F ) je indukovani podgraf grafa G ako U V i F sadrži sve grane iz E kojima su oba kraja u U, videti primer na slici 8. Stepen čvora je broj njemu susednih čvorova. 14

15 Slika 8: Primer indukovanog podgrafa. Grane su neuređeni parovi čvorova. Problem. Za zadati neusmereni graf G = (V, E) i zadati prirodni broj k pronaći maksimalni indukovani podgraf H = (U, F ) grafa G (tj. indukovani podgraf sa maksimalnim brojem čvorova) uz uslov da svi čvorovi podgrafa H imaju stepen bar k, ili ustanoviti da takav indukovani podgraf ne postoji. Umesto da algoritam posmatramo kao niz koraka koje treba izvršiti da bi se došlo do rezultata, možemo da sebi postavimo za cilj dokazivanje teoreme da algoritam postoji. Potrebno je pronaći maksimalni indukovani podgraf koji zadovoljava zadate uslove. : (indukcijom po broju čvorova n) (B.I.) Prvi netrivijalni slučaj pojavljuje se za n = k + 1, jer ako je n k, onda su stepeni svih čvorova manji od k. Ako je n = k + 1, onda samo u jednom slučaju postoji indukovani podgraf sa stepenima čvorova k: to je slučaj potpunog grafa (grafa sa svim mogućim granama). (I.H.) Pretpostavimo da umemo da rešimo problem sa v = n čvorova. (I.K.) Posmatramo graf G = (V, E), gde je sada V = n + 1. Ako su stepeni svih čvorova u G veći ili jednaki od k, onda graf H = G zadovoljava uslove i dokaz je završen. U protivnom, postoji čvor v stepena < k. Čvor v se može ukloniti iz G zajedno sa svim njemu susednim granama, ne menjajući uslove teoreme. Posle uklanjanja v, graf ima n čvorova, pa prema induktivnoj hipotezi mi umemo da rešimo problem do kraja. 11 Nalaženje maksimalnog podskupa S A datog skupa A na kome je zadata funkcija f : A A sa osobinom 1 1 Problem. Neka je zadat konačan skup A i preslikavanje f : A A. Odrediti podskup S A sa najvećim mogućim brojem elemenata tako da bude f(s) S i da restrikcija f na S bude bijekcija. Ako je f bijekcija, onda kompletan skup A zadovoljava uslove problema, pa je maksimalni podskup S = A. Ako je pak f(a) = f(b) za neke a b, onda S ne može da sadrži i a i b. Na primer, skup S u problemu sa slike 9 ne može da sadrži oba elementa 2 i 3, jer je f(2) = f(3) = 1. Slika 9: Primer preslikavanja skupa u samog sebe. 15

16 Međutim, nije svejedno koji će elemenat od ova dva biti eliminisan. Ako na primer eliminišemo 3, onda se zbog f(1) = 3 mora eliminisati i 1. Zatim se na isti način zbog f(2) = 1 mora eliminisati i 2. Dobijeni podskup sigurno nije maksimalan, jer je moguće eliminisati samo elemenat 2 umesto 1, 2 i 3. Rešenje problema na slici 8 je podskup {1, 3, 5}, što se može ustanoviti npr. proverom svih mogućih podskupova S A. Postavlja se pitanje nalaženja opšteg metoda za odlučivanje koje elemente treba uključiti u S. Algoritam. U svakom koraku pronalazimo elemenat u koga se ni jedan drugi ne preslikava, uklanjamo ga i nastavljamo rekurzivno. Realizacija algoritma ipak ne mora da bude rekurzivna. Svakom elementu i, 1 i n pridružuje se brojač c[i], čija je početna vrednost jednaka broju elemenata koji se preslikavaju u i. Vrednosti c[i] mogu se izračunati u n koraka prolazeći kroz vektor f i pri tome povećavajući za jedan odgovarajuće brojače. Zatim se u listu stavljaju svi elementi kojima je vrednost brojača dobila vrednost 0. U svakom koraku se prvi elemenat j iz liste uklanja iz liste i iz skupa, dekrementira se c[f[j]], a ako c[f[j]] dobije vrednost 0, f[j] se stavlja u listu. Rešavanje je završeno u trenutku kad je lista prazna. Složenost. Za uvodni deo (inicijalizaciju) treba izvršiti O(n) koraka. Svaki elemenat se u listu može staviti najviše jednom, a operacije potrebne da se elemenat ukloni iz liste izvršavaju se za vreme ograničeno konstantom. Prema tome, ukupan broj koraka je O(n). 12 Algoritam za nalaženje takvog i da su u kvadratnoj 0 1 matrici svi elementi i te vrste (sem i tog) 1, i svi elementi i te kolone (sem i tog) 0 Ovaj problem je poznatiji pod imenom,,problem nalaženja zvezde. Među n osoba zvezda je osoba koja nikoga ne poznaje, a koju svi ostali poznaju. Problem je identifikovati zvezdu (ako ona postoji) postavljajući pitanja oblika,,izvinite, da li poznajete onu osobu? Pretpostavlja se da su svi odgovori tačni, a da će čak i zvezda odgovarati na pitanja. Problem se može preformulisati u grafovski. Formiramo usmereni graf sa čvorovima koji odgovaraju osobama, u kome grana od osobe A ka osobi B postoji ako A poznaje B. Zvezda odgovara ponoru grafa, čvoru u koji ulazi n 1 grana, a iz koga ne izlazi ni jedna grana. Jasno je da graf može imati najviše jedan ponor. Ulaz problema se opisuje n x n matricom povezanosti M, čiji elemenat M ij je jednak 1 ako osoba i poznaje osobu j, odnosno 0 u protivnom; dijagonalni elementi su jednaki nuli. Bazni slučaj sa dve osobe je jednostavan. Posmatrajmo razliku između problema sa n 1 osobom i problema sa n osoba. Pretpostavljamo da znamo da pronađemo zvezdu među prvih n 1 osoba indukcijom. Pošto može da postoji najviše jedna zvezda, postoje tri mogućnosti: 1. zvezda je jedna od prvih n 1 osoba; 2. zvezda je n-ta osoba; 3. zvezda ne postoji. Pretpostavimo da osobu A pitamo da li poznaje osobu B. Ako A poznaje B, onda A nije zvezda, a ako pak A ne poznaje B, onda B nije zvezda. U oba slučaja se jedna osoba eliminiše postavljanjem samo jednog pitanja. Algoritam. Algoritam se deli u dve faze. U prvoj fazi se eliminišu sve osobe sem jednog kandidata za zvezdu, a druga faza je neophodna da se ustanovi da li kandidat jeste zvezda. Algoritam Zvezda(Poznaje); Ulaz: Poznaje (n n Bulova matrica sa nulama na dijagonali). Izlaz: Zvezda. i := 1; {osoba A} j := 2; {osoba B} Naredni := 3; {sledeći koji će se proveravati} 16

17 end {prva faza: eliminišu se svi kandidati sem jednog} while Naredni <= n + 1 do if Poznaje[i, j] then i := Naredni {eliminacija i} else j := Naredni; {eliminacija j} Naredni := Naredni + 1 {po izlasku iz petlje je ili i = n + 1 ili j = n + 1} if i = n + 1 then Kandidat := j else Kandidat := i {druga faza: provera da li je Kandidat zvezda} Jeste := true; {true ako Kandidat jeste zvezda} k := 1; while Jeste and k <= n do if Poznaje[Kandidat, k] then Jeste := false; if not Poznaje[k, Kandidat] then if Kandidat!= k then Jeste := false; k := k + 1; if Jeste then Zvezda := Kandidat else Zvezda := 0 {nema zvezde} Složenost. Postavlja se najviše 3(n 1) pitanja: n 1 pitanja u prvoj fazi da bi se eliminisala n 1 osoba, i najviše 2(n 1) pitanja za proveru da li je preostali kandidat zvezda. Primetimo da veličina ulaza nije n, nego n(n 1), broj elemenata matrice. Prikazano rexee pokazuje da je moguće odrediti zvezdu pregledajući najviše O(n) elemenata matrice povezanosti, iako je jasno da rešenje mora bitno da zavisi od svih n(n 1) elemenata matrice. 13 Računanje svih faktora ravnoteže binarnog stabla Neka je T binarno stablo sa korenom r. Visina čvora v je rastojanje od v do najdaljeg potomka. Visina stabla je visina njegovog korena. Faktor ravnoteže čvora v definiše se kao razlika visina njegovog levog i desnog podstabla. Na slici 10 prikazano je binarno stablo kod koga je uz svaki čvor upisan par h/b, gde je h visina čvora, a b njegov faktor ravnoteže. Slika 10: Binarno stablo sa oznakama h/b uz unutrašnje čvorove. Problem. Za zadato stablo T sa n čvorova izračunati faktore ravnoteže svih čvorova. Pojačana induktivna hipoteza. Znamo da izračunamo faktore ravnoteže i visine svih čvorova u stablima koja imaju < n čvorova. Bazni slučaj je trivijalan. Kad posmatramo koren proizvoljnog stabla, njegov faktor ravnoteže možemo lako da odredimo kao razliku visina njegovih sinova. Možemo da odredimo i visinu korena: to je veća od visina njegovih sinova, uvećana za jedan. 17

18 Lako je proveriti da se slučaj kad nema levog ili desnog podstabla, može rešiti tako da se visina nepostojećeg sina zameni sa 1. Karakteristika ovog algoritma je da on rešava nešto opštiji problem. Umesto da računamo samo faktore ravnoteže, mi izračunavamo i visine čvorova. Ispostavlja se da je opštiji problem lakši, jer se visine lako računaju. Ako je rešenje opštije (jer je problem proširen), onda induktivni korak može biti jednostavniji, jer posedujemo snažnija sredstva. Uobičajena greška pri rešavanju šireg problema je da se zaboravi na postojanje dva parametra, i da se svaki od ih mora posebno izračunati. 14 Nalaženje maksimalnog (uzastopnog) podniza datog niza realnih brojeva Problem. Zadat je niz x 1, x 2,..., x n realnih brojeva (ne obavezno pozitivnih). Odrediti podniz x i, x i+1,..., x j uzastopnih elemenata sa najvećom mogućom sumom. Za ovakav podniz reći ćemo da je maksimalni podniz. Na primer, u nizu (2, 3, 1.5, 1, 3, 2, 3, 3) maksimalni podniz je 1.5, 1, 3, sa sumom 3.5. Može da postoji više maksimalnih podnizova datog niza. Ako su svi članovi niza negativni, onda je maksimalni podniz prazan (po definiciji, suma praznog niza je 0). Induktivna hipoteza. Znamo da nađemo maksimalni podniz u nizovima dužine < n. Za n = 1 maksimalni podniz je broj x 1 ako je x 1 0, odnosno prazan podniz ako je x 1 < 0. Problem sa razmotrenom induktivnom hipotezom je u tome što x n može da produži podniz koji nije maksimalan u S i tako formira novi maksimalni podniz u S. Prema tome, nije dovoljno samo poznavanje maksimalnog podniza u S. Međutim, x n može da produži samo podniz koji se završava sa x n 1, odnosno sufiks niza S. Pojačana induktivna hipoteza. U nizovima dužine < n umemo da pronađemo maksimalni podniz, i maksimalni sufiks. Ako za podniz S znamo oba ova podniza, algoritam postaje jasan. Maksimalni sufiks proširujemo brojem x n. Ako je dobijena suma veća od sume (globalno) maksimalnog podniza, onda imamo novi maksimalni podniz (takođe i novi maksimalni sufiks). U protivnom, zadržavamo prethodni maksimalni podniz. Posao time nije završen: potrebno je odrediti i novi maksimalni sufiks. U opštem slučaju novi maksimalni sufiks se ne dobija uvek proširivanjem starog brojem x n. Može se dogoditi da je maksimalni sufiks koji se završava sabirkom x n negativan. Tada je novi maksimalni sufiks ustvari prazan podniz, sa sumom 0. Algoritam Max_uzast_podniz(X, n); Ulaz: X (niz dužine n). Izlaz: Glob_max (suma maksimalnog podniza). Glob_max := 0; {početna vrednost globalno maks. sume} Suf_max := 0; {početna vrednost sume maks. sufiksa} for i := 1 to n do if x[i] + Suf_max > Glob_max then Suf_max := Suf_max + x[i]; Glob_max := Suf_max; else if x[i] + Suf_max > 0 then Suf_max := Suf_max + x[i]; else Suf_max := 0; end 15 Binarna pretraga, primeri primene; interpolaciona pretraga 15.1 Binarna pretraga, primeri primene Osnovna ideja binarne pretrage je podela prostora na dva približno jednaka dela postavljanjem samo jednog pitanja. 18

19 Problem (čista binarna pretraga). Neka je x 1, x 2,..., x n niz realnih brojeva takav da je x1 x2... x n. Za zadati realni broj z treba ustanoviti da li se z pojavljuje u nizu, a ako je odgovor,,da, potrebno je pronaći indeks i takav da je x i = z. Ideja je prepoloviti prostor koji se pretražuje tako što se najpre proveri srednji član niza. Pretpostavimo zbog jednostavnosti da je n paran broj. Ako je z manje od x n/2+1, onda z može biti samo u prvoj polovini niza; u protivnom, z može biti samo u drugoj polovini niza. Pronalaženje z u prvoj ili drugoj polovini niza je problem veličine n/2, koji se rešava rekurzivno. Bazni slučaj n = 1 rešava se neposrednim upoređivanjem z sa elementom. Algoritam Binarna_Pretraga(X, n, z); Ulaz: X (niz od n brojeva, uredenih neopadajuće) i z (broj koji se traži). Izlaz: Poz (indeks i takav da je X[i] = z, ili 0 ako takav indeks ne postoji). Poz = Nadji(z, 1, n); end function Nadji(z; Levi;Desni) if Levi = Desni then if X[Levi] = z then Nadji = Levi; else Nadji = 0; else Srednji = (Levi + Desni)/2; if z < X[Srednji] then Nadji = Nadji(z, Levi, Srednji - 1) else Nadji = Nadji(z, Srednji, Desni) end Složenost. Složenost binarne pretrage niza od n elemenata može se opisati rekurentnom relacijom T (n) = T (n/2) + 1, odakle se dobija da je složenost O(log n) na osnovu Master teoreme. Problem. Za zadati rastuće uređeni niz celih brojeva a 1, a 2,..., a n utvrditi da li postoji indeks i, takav da je a i = i. Ovaj problem je mogući svesti na binarnu pretragu. Zaista, niz x i = a i i je neopadajući (jer je x i+1 x i = a i+1 a i 1 0), a uslov a i = i je ekvivalentan uslovu x i = 0. Prema tome, zadati problem rešava se binarnom pretragom niza x i, u kome se traži broj z = 0. Problem (binarna pretraga ciklički uređenog niza). Za zadati cikliqčki uređeni niz pronaći poziciju minimalnog elementa niza (zbog jednostavnosti može se pretpostaviti da je ta pozicija jedinstvena). Za niz x 1, x 2,..., x n kaže se da je ciklički uređen ako važe nejednakosti x i < x i+1 <... < x n < x 1 <... < x i 1, gde je x i najmanji elemenat niza. Da bismo pronašli minimalni elemenat x i u nizu, koristimo ideju binarne pretrage da jednim upoređivanjem eliminišemo polovinu niza. Uzmimo proizvoljna dva broja x k i x m takva da je k < m. Ako je x k < x m, onda i ne može biti u intervalu k < i m, jer je x i najmanji elemenat niza (u tom slučaju bilo bi x i < x m < x k suprotno pretpostavci da je x k < x m ). U protivnom, ako je x k > x m, onda i mora biti u intervalu k < i m, jer je tada monotonost niza prekinuta negde u intervalu indeksa [k, m]. Prema tome, jednim upoređivanjem može se eliminisati mnogo elemenata. Odgovarajućim izborom k i m, i se može odrediti pomoću O(log n) upoređivanja. Invarijanta glavne petlje algoritma je uslov da se i uvek nalazi u intervalu [Levi, Desni]. Algoritam Cikl_Binarna_Pretraga(X, n); 19

20 Ulaz: X (vektor sa ciklički uredenim nizom od n različitih brojeva); Izlaz: poz (indeks minimalnog elementa u X); poz = c_nadji(1, n); end function c_nadji(levi, Desni) if Levi = Desni then c_nadji = Levi; else Srednji = (Levi + Desni)/2; if X[Srednji] < X[Desni] then c_nadji = c_nadji(levi, Srednji); else c_nadji = c_nadji(srednji + 1, Desni); end Problem (Binarna pretraga niza nepoznate dužine). Posmatrajmo varijantu problema pretrage kad se zadati broj z traži u uređenom nizu nepoznate dužine. Da bi se problem sveo na već rešen, potrebno je pronaći bar jedan indeks i takav da je x i > z: tada se može preći na binarnu pretragu opsega indeksa od 1 do i. Može se postupiti na sledeći način. Najpre se z upoređuje sa x 1. Ako je z x 1, onda z može biti jednako samo broju x 1. Pretpostavimo da znamo indeks j takav da je z > x j. Posle upoređivanja z sa x 2j postoje dve mogućnosti. Ako je z x 2j, onda znamo da je x j < z x 2j, pa se z može pronaći pomoću O(log 2 j) upoređivanja. Ako je pak z > x 2j, onda je prostor za pretraživanje udvostručen, i treba nastaviti (indukcijom) tako što se j zameni sa 2j. Pretpostavimo da je i najmanji indeks takav da je z x i. Tada je dovoljno O(log 2 i) upoređivanja da se (udvostručavanjem) pronađe takvo x j koje je veće ili jednako od z, i novih O(log 2 i) upoređivanja da se pronađe z. Isti algoritam može se upotrebiti i ako je dužina niza poznata, ali očekujemo da je indeks i vrlo mali. Da bi ovaj algoritam bio bolji od obične binarne pretrage, potrebno je da bude priblino 2 log 2 i < log 2 n, odnosno i < n. Problem (Utvrđivanje da li zadata tačka pripada mnogouglu). P i tačka q. Ustanoviti da li je tačka u ili van mnogougla P. Zadat je prost mnogougao Posmatrajmo proizvoljnu polupravu sa temenom q. Vidi se da je dovoljno prebrojati preseke sa stranicama mnogougla, sve do dostizanja spoljašnje oblasti. Uopšte (specijalne slučajeve na trenutak zanemarujemo) tačka je u mnogouglu ako i samo ako je presek poluprave sa temenom q neparan. Specijalni slučajevi mogu biti nešto kompleksniji (npr. odabrana poluprava prolazi kroz teme mnogougla), pa autori preporučuju konsultovanje knjigom profesora. Potpun algoritam je dat sa: Algoritam Tačka_u_mnogouglu_2(P, q); {drugi pokušaj} Ulaz: P (prosti mnogougao sa temenima p1, p2,..., pn i stranicama e1, e2,..., en), i q (tačka sa koordinatama (x0, y0)). Izlaz: Pripada (bulova promenljiva, true akko q pripada P). Broj := 0; for sve grane ei mnogougla do if prava x = x0 seče ei then {Pretpostavljamo da presek nije ni teme ni stranica mnogougla} Neka je yi y-koordinata preseka prave x = x0 sa ei; if yi < y0 then {presek je ispod q} Broj := Broj + 1; if Broj je neparan then Pripada := true; else Pripada := false; end 20

21 15.2 Interpolaciona pretraga Problem (Interpolaciona pretraga) U okviru binarne pretrage prostor pretrage se svaki put polovi, što garantuje logaritamsku vremensku složenost. Međutim, ako se u toku pretrage naiđe na vrednost vrlo blisku traženom broju z, izgleda razumno da se pretraga usredsredi na,,okolinu tog indeksa umesto da se nastavi sa polovljenjem naslepo. Specijalno, ako je vrednost z vrlo mala, može se započeti sa pretragom negde na početku niza umesto od srednjeg indeksa. Slika 11: Interpolaciona pretraga ilustracija. Umesto da polovimo prostor pretrage, mi ga delimo tako da bude najveća,,verovatnoća uspeha. Odnos u kome se opseg indeksa deli određuje se interpolacijom, što je ilustrovano na slici 11. Recimo da je z = 7. Prvom interpolacijom dobija se indeks 6; ispostavlja se da je X[6] < z. Sledeća interpolacija u intervalu indeksa [6, 17] dovodi do rešenja X[7]. Algoritam, zajedno sa izrazom po kome se vrši interpolacija, dat je sa: 21

22 Složenost. Efikasnost interpolacione pretrage ne zavisi samo od dužine niza, nego i od svih njegovih elemenata, odnosno od kompletnog ulaza. Postoje ulazi za koje interpolaciona pretraga proverava praktično svaki član niza (videti zadatak 5.5 u profesorovoj knjizi). S druge strane, interpolaciona pretraga je vrlo efikasna za ulaze sa približno uniformno raspodeđenim elementima (odnosno ako su tačke (i, x i ) grupisane u okolini prave). Pokazuje se da je srednji broj upoređivanja u toku interpolacione pretrage (usrednjavanje po svim mogućim nizovima) jednak O(log log n). Ipak, interpolaciona pretraga nije mnogo bolja od obične binarne pretrage iz dva razloga. Najpre, sem za jako velike vrednosti n, već je log 2 n mala vrednost, pa njen logaritam nije mnogo manji. Drugo, kod izbora narednog indeksa u toku interpolacione pretrage potrebno je izvršiti nešto komplikovanije aritmetičke operacije. 16 Istovremeno nalaženje najmanjeg i najvećeg elementa u nizu Podelimo skup na dva podskupa sa jednakim brojem elemenata. Rešivši rekurzivno oba potproblema dobijamo dva minimalna (a 1 i a 2 ) i dva maksimalna elementa (b 1 i b 2 ), pri čemu su a 1 i b 1 iz prvog, a a 2 i b 2 iz drugog podniza. Potrebno je videti koliko upoređivanja je potrebno da je odrede maksimum i minimum od ova četiri broja. Lako je videti da će biti dovoljna 2 pitanja: Prvo pitanje je a 2 a 1? Ukoliko je odgovor,,da, onda se postavlja pitanje b 2 a 1? Ukoliko je odgovor,,da, onda se u rekurzivnom pozivu vraća par (a 2, b 2 ), a ukoliko je odgovor,,ne, onda se vraća par (a 2, a 1 ). Ukoliko je odgovor na prvo pitanje bio,,ne, onda se postavlja pitanje a 2 b 1? Ukoliko je odgovor,,da, onda se vraća par (a 1, a 2 ), a inače se vraća par (a 1, b 1 ). Dakle, rekurentna relacija izgleda odakle se dobija (n = 2 k ) T (n) = 2T (n/2) + 2, T (2) = 1, T (2 k ) = 2T (2 k 1 ) + 2 = 2(2T (2 k 1 ) + 2) + 2 = = 2 2 T (2 k 2 ) = = 2 3 T (2 k 3 ) = =... = = 2 k 1 T (2) + 2 k = }{{} 2 k 2 = 2 k k 2 T (n) = n 2 + n 2 = = 3n Nalaženje k-tog najmanjeg od n zadatih brojeva Problem. Za zadati niz elemenata S = x 1, x 2,..., x n i prirodni broj k, 1 k n, odrediti k-ti najmanji elemenat u S. Ideja je primeniti dekompoziciju na isti način kao i kod algoritma sortiranje razdvajanjem, sem što je ovog puta dovoljno rešiti samo jedan od dva potproblema. Kod sortiranja razdvajanjem niz se razdvaja pomoću pivota na dva podniza. Dva podniza se zatim sortiraju rekurzivno. Ovde je dovoljno odrediti koji od podnizova sadri k-ti najmanji elemenat, a onda algoritam primeniti rekurzivno samo na taj podniz. Ostali elementi mogu se ignorisati. 22

23 Algoritam Selekcija(X, n, k); Ulaz: X (niz od n brojeva) i k (prirodni broj); Izlaz: S (k-ti najmanji elemenat; niz X je promenjen); if (k < 1) or (k > n) then print "greška"; else S = Sel(1, n, k); end function Sel(Levi, Desni, k); if Levi = Desni then Sel = Levi; else S = Razdvajanje(X, Levi, Desni); {videti sliku *} if S - Levi + 1 >= k then Sel = Sel(Levi, S, k); else Sel = Sel(S + 1, Desni, k - (S - Levi + 1)); end Složenost. Kao i kod sortiranja razdvajanjem, loš izbor pivota vodi kvadratnom algoritmu. Srednja složenost ovog algoritma može se oceniti na sličan način kao kod sortiranja razdvajanjem. Rekurentna relacija koja opisuje prosečnu složenost ovog algoritam je T (n) = T (n/2) + cn, odakle se iz Master teoreme dobije složenost O(n). 18 Nalaženje dve najbliže tačke u datom skupu od n tačaka u ravni Umesto da razmatramo tačke jednu po jednu, možemo da skup tačaka podelimo na dva jednaka dela. Induktivna hipoteza je takva da problem svodimo na dva problema sa n/2 tačaka. Zbog jednostavnosti pretpostavimo da je n stepen dvojke, tako da je skup uvek moguće podeliti na dva jednaka dela. Postoji više načina da se skup podeli na dva jednaka dela. Biramo način koji najviše odgovara našim ciljevima. Voleli bismo da dobijemo što više korisnih informacija iz rešea manjih problema, odnosno da što veći deo tih informacija važi i za kompletan problem. Izgleda razumno da se skup podeli na dva dela podelom ravni na dva disjunktna dela, tako da svaki od njih sadrži polovinu tačaka. Pošto se pronađe najmanje rastojanje u svakom delu, treba razmotriti samo rastojanja između tačaka bliskih granici skupova. Najjednostavniji način podele je sortirati tačke prema (na primer) x-koordinatama i podeliti ravan pravom paralelnom sa y-osom, koja deli skup na dva jednaka dela, videti sliku 12 (ako više tačaka leži na pravoj podele, tačke se mogu na proizvoljan način razdeliti između skupova). Način podele izabran je tako da se maksimalno pojednostavi objedinjavanje rešenja manjih problema. Sortiranje treba izvršiti samo jednom. 23

24 Slika 12: Problem nalaženja dve najbliže tačke. Zbog jednostavnosti ograničićemo se na nalaženje vrednosti najmanjeg rastojanja između tačaka (a ne i para tačaka za koje se ono dostiže). Pronalaženje dve najbliže tačke izvodi se na sledeći način. Neka je P skup tačaka i neka je n stepen dvojke. Najpre se skup P deli na dva istobrojna podskupa P 1 i P 2 na opisani način. Najmanje rastojanje u svakom podskupu pronalazi se na osnovu induktivne hipoteze. Neka je d 1 minimalno rastojanje u P 1, a d 2 minimalno rastojanje u P 2. Bez smanjenja opštosti može se pretpostaviti da je d 1 d 2. Potrebno je pronaći najmanje rastojanje u celom skupu, odnosno ustanoviti da li u P 1 postoji tačka na rastojanju manjem od d 1 od neke tačke u P 2. Primetimo najpre da je dovoljno razmatrati tačke u traci širine 2d 1, simetričnoj u odnosu na pravu podele (videti sliku 13). Ostale tačke ne mogu biti na rastojanju manjem od d 1 od neke tačke iz drugog podskupa. Na osnovu ovog zapažanja obično se iz razmatranja eliminiše veliki broj tačaka. Međutim, u najgorem slučaju sve tačke mogu biti u traci, pa ne možemo da sebi priuštimo primenu trivijalnog algoritma na njih. Drugo manje očigledno zapažanje je da za proizvoljnu tačku p u traci postoji samo mali broj tačaka u suprotnoj traci čije rastojanje od p može biti manje od d 1. Iskoristićemo činjenicu da je 2/2 > 0, 7. Neka je sa y p označena y-koordinata tačke p. Konstruišimo pravougaonik visine 2, 1d 1 < 3 2 2d1 i širine 1, 4d 1 < 2d 1 u suprotnoj traci (videti sliku 11), tako da nalože na pravu podele i da mu je y-koordinata preseka dijagonala jednaka y p. Podelimo ga jednom vertikalnom pravom i sa dve horizontalne prave na šest jednakih kvadrata stranice 0, 7d 1 (kojima je dijagonala manja od d 1!!!). U svakom od malih kvadrata može se naći najviše jedna tačka, jer je rastojanje bilo koje dve tačke u kvadratu manje od d 1. Sve tačke u drugom podskupu, sa rastojanjem od p manjim od d 1, očigledno se moraju nalaziti u pravougaoniku. Dakle, u drugom podskupu se može nalaziti najviše šest tačaka na rastojanju od p manjem od d 1 : tačka kandidat sa y-koordinatom y q mora da zadovolji i uslov y p y q < d 1, pa se mora nalaziti u jednom od 6 kvadrata. Prema tome, ako sve tačke u traci sortiramo prema y-koordinatama i pregledamo ih tim redom, dovoljno je da za svaku tačku proverimo rastojanje osam suseda u suprotnoj traci, četiri ispod i četiri iznad (a ne od svih n 1 tačaka u najgorem slučaju). 24

25 Slika 13: Ocena maksimalnog broja tačaka iz suprotnog podskupa, bliskih fiksiranoj tački. Složenost. Sortiranje složenosti O(n log n) izvršava se samo jednom. Zatim se rešavaju dva potproblema veličine n/2. Eliminacija tačaka van centralne trake može se izvesti za O(n) koraka. Za sortiranje tačaka u traci po y-koordinatama u najgorem sluqaju potrebno je O(n log n) koraka. Konačno, potrebno je O(n) koraka da se pregledaju tačke u traci, i da se provere rastojanja svake od njih od konstantnog broja suseda u sortiranom redosledu. Ukupno, da bi se rešio problem veličine n, treba rešiti dva potproblema veličine n/2 i izvršiti O(n log n) koraka za kombinovanje njihovih rešenja (plus O(n log n) koraka za jednokratno sortiranje tačaka po x-koordinatama na početku). Dobijamo diferencnu jednačinu T (n) < 2T (n/2) + cn log 2 n, T (2) = 1, pri čemu u T(n) nije uključeno početno sortiranje po x-koordinatama. Indukcijom se pokazuje da je njeno rešenje T (n) = O(n log 2 n). Ovo je bolje od kvadratne složenosti, ali se može poboljšati. Algoritam složenosti O(n log n). Osnovna ideja je pojačati induktivnu hipotezu. U toku objedinjavanja rešenja potproblema izvodi se O(n log n) koraka zbog sortiranja tačaka po y-koordinatama. Može li se sortiranje izvesti usput u toku nalaženja dveju najbližih tačaka? Drugim reqima, cilj je pojačati induktivnu hipotezu za problem dve najbliže tačke tako da obuhvati i sortiranje. Pojačana induktivna hipoteza. Za zadati skup od < n tačaka u ravni umemo da pronađemo najmanje rastojanje i da skup tačaka sortiramo po y-koordinatama. Već smo videli kako se može pronaći minimalno rastojanje ako se tačke u svakom koraku sortiraju po y-koordinatama. Dakle, potrebno je još samo proširiti induktivnu hipotezu tako da obuhvati sortiranje n tačaka kad su dva podskupa veličine n/2 već sortirana. Međutim, to je upravo sortiranje objedinjavanjem. Osnovna prednost ovog pristupa je u tome što se pri objedinjavanju re senja ne mora izvesti kompletno sortiranje, nego samo objedinjavanje dva već sortirana podniza. Pošto se objedinjavanje sortiranih podnizova izvodi za O(n) koraka, diferencna jednačina za složenost (bez početnog sortiranja po x-koordinatama) postaje T (n) < 2T (n/2) + cn, T (2) = 1. Njeno rešenje je T (n) = O(n log n), što je asimptotski jednako složenosti početnog sortiranja tačaka po x-koordinatama. 25

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović Novi Sad April 17, 2018 1 / 22 Teorija grafova April 17, 2018 2 / 22 Definicija Graf je ure dena trojka G = (V, G, ψ), gde je (i) V konačan skup čvorova,

Διαβάστε περισσότερα

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju RAČUN OSTATAKA 1 1 Prsten celih brojeva Z := N + {} N + = {, 3, 2, 1,, 1, 2, 3,...} Osnovni primer. (Z, +,,,, 1) je komutativan prsten sa jedinicom: sabiranje (S1) asocijativnost x + (y + z) = (x + y)

Διαβάστε περισσότερα

Teorijske osnove informatike 1

Teorijske osnove informatike 1 Teorijske osnove informatike 1 9. oktobar 2014. () Teorijske osnove informatike 1 9. oktobar 2014. 1 / 17 Funkcije Veze me du skupovima uspostavljamo skupovima koje nazivamo funkcijama. Neformalno, funkcija

Διαβάστε περισσότερα

3.1 Granična vrednost funkcije u tački

3.1 Granična vrednost funkcije u tački 3 Granična vrednost i neprekidnost funkcija 2 3 Granična vrednost i neprekidnost funkcija 3. Granična vrednost funkcije u tački Neka je funkcija f(x) definisana u tačkama x za koje je 0 < x x 0 < r, ili

Διαβάστε περισσότερα

Algoritmi i strukture podataka - 1.cas

Algoritmi i strukture podataka - 1.cas Algoritmi i strukture podataka - 1.cas Aleksandar Veljković October 2016 Materijali su zasnovani na materijalima Mirka Stojadinovića 1 Složenost algoritama Približna procena vremena ili prostora potrebnog

Διαβάστε περισσότερα

SISTEMI NELINEARNIH JEDNAČINA

SISTEMI NELINEARNIH JEDNAČINA SISTEMI NELINEARNIH JEDNAČINA April, 2013 Razni zapisi sistema Skalarni oblik: Vektorski oblik: F = f 1 f n f 1 (x 1,, x n ) = 0 f n (x 1,, x n ) = 0, x = (1) F(x) = 0, (2) x 1 0, 0 = x n 0 Definicije

Διαβάστε περισσότερα

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET Goran Stančić SIGNALI I SISTEMI Zbirka zadataka NIŠ, 014. Sadržaj 1 Konvolucija Literatura 11 Indeks pojmova 11 3 4 Sadržaj 1 Konvolucija Zadatak 1. Odrediti konvoluciju

Διαβάστε περισσότερα

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti). PRAVA Prava je kao i ravan osnovni geometrijski ojam i ne definiše se. Prava je u rostoru određena jednom svojom tačkom i vektorom aralelnim sa tom ravom ( vektor aralelnosti). M ( x, y, z ) 3 Posmatrajmo

Διαβάστε περισσότερα

Osnovne teoreme diferencijalnog računa

Osnovne teoreme diferencijalnog računa Osnovne teoreme diferencijalnog računa Teorema Rolova) Neka je funkcija f definisana na [a, b], pri čemu važi f je neprekidna na [a, b], f je diferencijabilna na a, b) i fa) fb). Tada postoji ξ a, b) tako

Διαβάστε περισσότερα

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012 Iskazna logika 3 Matematička logika u računarstvu Department of Mathematics and Informatics, Faculty of Science,, Serbia novembar 2012 Deduktivni sistemi 1 Definicija Deduktivni sistem (ili formalna teorija)

Διαβάστε περισσότερα

IZVODI ZADACI (I deo)

IZVODI ZADACI (I deo) IZVODI ZADACI (I deo) Najpre da se podsetimo tablice i osnovnih pravila:. C`=0. `=. ( )`= 4. ( n )`=n n-. (a )`=a lna 6. (e )`=e 7. (log a )`= 8. (ln)`= ` ln a (>0) 9. = ( 0) 0. `= (>0) (ovde je >0 i a

Διαβάστε περισσότερα

Operacije s matricama

Operacije s matricama Linearna algebra I Operacije s matricama Korolar 3.1.5. Množenje matrica u vektorskom prostoru M n (F) ima sljedeća svojstva: (1) A(B + C) = AB + AC, A, B, C M n (F); (2) (A + B)C = AC + BC, A, B, C M

Διαβάστε περισσότερα

Računarska grafika. Rasterizacija linije

Računarska grafika. Rasterizacija linije Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem

Διαβάστε περισσότερα

Elementi spektralne teorije matrica

Elementi spektralne teorije matrica Elementi spektralne teorije matrica Neka je X konačno dimenzionalan vektorski prostor nad poljem K i neka je A : X X linearni operator. Definicija. Skalar λ K i nenula vektor u X se nazivaju sopstvena

Διαβάστε περισσότερα

Univerzitet u Nišu, Prirodno-matematički fakultet Prijemni ispit za upis OAS Matematika

Univerzitet u Nišu, Prirodno-matematički fakultet Prijemni ispit za upis OAS Matematika Univerzitet u Nišu, Prirodno-matematički fakultet Prijemni ispit za upis OAS Matematika Rešenja. Matematičkom indukcijom dokazati da za svaki prirodan broj n važi jednakost: + 5 + + (n )(n + ) = n n +.

Διαβάστε περισσότερα

41. Jednačine koje se svode na kvadratne

41. Jednačine koje se svode na kvadratne . Jednačine koje se svode na kvadrane Simerične recipročne) jednačine Jednačine oblika a n b n c n... c b a nazivamo simerične jednačine, zbog simeričnosi koeficijenaa koeficijeni uz jednaki). k i n k

Διαβάστε περισσότερα

Sortiranje prebrajanjem (Counting sort) i Radix Sort

Sortiranje prebrajanjem (Counting sort) i Radix Sort Sortiranje prebrajanjem (Counting sort) i Radix Sort 15. siječnja 2016. Ante Mijoč Uvod Teorem Ako je f(n) broj usporedbi u algoritmu za sortiranje temeljenom na usporedbama (eng. comparison-based sorting

Διαβάστε περισσότερα

5 Ispitivanje funkcija

5 Ispitivanje funkcija 5 Ispitivanje funkcija 3 5 Ispitivanje funkcija Ispitivanje funkcije pretodi crtanju grafika funkcije. Opšti postupak ispitivanja funkcija koje su definisane eksplicitno y = f() sadrži sledeće elemente:

Διαβάστε περισσότερα

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo IZVODI ZADACI ( IV deo) LOGARITAMSKI IZVOD Logariamskim izvodom funkcije f(), gde je >0 i, nazivamo izvod logarima e funkcije, o jes: (ln ) f ( ) f ( ) Primer. Nadji izvod funkcije Najpre ćemo logarimovai

Διαβάστε περισσότερα

Računarska grafika. Rasterizacija linije

Računarska grafika. Rasterizacija linije Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem

Διαβάστε περισσότερα

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je,

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je, PARCIJALNI IZVODI I DIFERENCIJALI Sama definicija parcijalnog ivoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je, naravno, naučiti onako kako vaš profesor ahteva. Mi ćemo probati

Διαβάστε περισσότερα

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla XI dvoqas veжbi dr Vladimir Balti 4. Stabla Teorijski uvod Teorijski uvod Definicija 5.7.1. Stablo je povezan graf bez kontura. Definicija 5.7.1. Stablo je povezan graf bez kontura. Primer 5.7.1. Sva stabla

Διαβάστε περισσότερα

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15 MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15 Matrice - osnovni pojmovi (Matrice i determinante) 2 / 15 (Matrice i determinante) 2 / 15 Matrice - osnovni pojmovi Matrica reda

Διαβάστε περισσότερα

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1 Strukture podataka i algoritmi 1. kolokvij Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i službeni šalabahter. Predajete samo papire koje ste dobili. Rezultati i uvid u kolokvije: ponedjeljak,

Διαβάστε περισσότερα

2log. se zove numerus (logaritmand), je osnova (baza) log. log. log =

2log. se zove numerus (logaritmand), je osnova (baza) log. log. log = ( > 0, 0)!" # > 0 je najčešći uslov koji postavljamo a još je,, > 0 se zove numerus (aritmand), je osnova (baza). 0.. ( ) +... 7.. 8. Za prelazak na neku novu bazu c: 9. Ako je baza (osnova) 0 takvi se

Διαβάστε περισσότερα

Ispitivanje toka i skiciranje grafika funkcija

Ispitivanje toka i skiciranje grafika funkcija Ispitivanje toka i skiciranje grafika funkcija Za skiciranje grafika funkcije potrebno je ispitati svako od sledećih svojstava: Oblast definisanosti: D f = { R f R}. Parnost, neparnost, periodičnost. 3

Διαβάστε περισσότερα

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011. INTEGRALNI RAČUN Teorije, metodike i povijest infinitezimalnih računa Lucija Mijić lucija@ktf-split.hr 17. veljače 2011. Pogledajmo Predstavimo gornju sumu sa Dodamo još jedan Dobivamo pravokutnik sa Odnosno

Διαβάστε περισσότερα

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A. 3 Infimum i supremum Definicija. Neka je A R. Kažemo da je M R supremum skupa A ako je (i) M gornja meda skupa A, tj. a M a A. (ii) M najmanja gornja meda skupa A, tj. ( ε > 0)( a A) takav da je a > M

Διαβάστε περισσότερα

III VEŽBA: FURIJEOVI REDOVI

III VEŽBA: FURIJEOVI REDOVI III VEŽBA: URIJEOVI REDOVI 3.1. eorijska osnova Posmatrajmo neki vremenski kontinualan signal x(t) na intervalu definisati: t + t t. ada se može X [ k ] = 1 t + t x ( t ) e j 2 π kf t dt, gde je f = 1/.

Διαβάστε περισσότερα

SOPSTVENE VREDNOSTI I SOPSTVENI VEKTORI LINEARNOG OPERATORA I KVADRATNE MATRICE

SOPSTVENE VREDNOSTI I SOPSTVENI VEKTORI LINEARNOG OPERATORA I KVADRATNE MATRICE 1 SOPSTVENE VREDNOSTI I SOPSTVENI VEKTORI LINEARNOG OPERATORA I KVADRATNE MATRICE Neka je (V, +,, F ) vektorski prostor konačne dimenzije i neka je f : V V linearno preslikavanje. Definicija. (1) Skalar

Διαβάστε περισσότερα

APROKSIMACIJA FUNKCIJA

APROKSIMACIJA FUNKCIJA APROKSIMACIJA FUNKCIJA Osnovni koncepti Gradimir V. Milovanović MF, Beograd, 14. mart 2011. APROKSIMACIJA FUNKCIJA p.1/46 Osnovni problem u TA Kako za datu funkciju f iz velikog prostora X naći jednostavnu

Διαβάστε περισσότερα

Zavrxni ispit iz Matematiqke analize 1

Zavrxni ispit iz Matematiqke analize 1 Građevinski fakultet Univerziteta u Beogradu 3.2.2016. Zavrxni ispit iz Matematiqke analize 1 Prezime i ime: Broj indeksa: 1. Definisati Koxijev niz. Dati primer niza koji nije Koxijev. 2. Dat je red n=1

Διαβάστε περισσότερα

Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu

Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu Trigonometrijske jednačine i nejednačine. Zadaci koji se rade bez upotrebe trigonometrijskih formula. 00. FF cos x sin x

Διαβάστε περισσότερα

4 Numeričko diferenciranje

4 Numeričko diferenciranje 4 Numeričko diferenciranje 7. Funkcija fx) je zadata tabelom: x 0 4 6 8 fx).17 1.5167 1.7044 3.385 5.09 7.814 Koristeći konačne razlike, zaključno sa trećim redom, odrediti tačku x minimuma funkcije fx)

Διαβάστε περισσότερα

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f 2. Nule i znak funkcije; presek sa y-osom IspitivaƬe

Διαβάστε περισσότερα

4.7. Zadaci Formalizam diferenciranja (teorija na stranama ) 343. Znajući izvod funkcije x arctg x, odrediti izvod funkcije x arcctg x.

4.7. Zadaci Formalizam diferenciranja (teorija na stranama ) 343. Znajući izvod funkcije x arctg x, odrediti izvod funkcije x arcctg x. 4.7. ZADACI 87 4.7. Zadaci 4.7.. Formalizam diferenciranja teorija na stranama 4-46) 340. Znajući izvod funkcije arcsin, odrediti izvod funkcije arccos. Rešenje. Polazeći od jednakosti arcsin + arccos

Διαβάστε περισσότερα

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x Zadatak (Darjan, medicinska škola) Izračunaj vrijednosti trigonometrijskih funkcija broja ako je 6 sin =,,. 6 Rješenje Ponovimo trigonometrijske funkcije dvostrukog kuta! Za argument vrijede sljedeće formule:

Διαβάστε περισσότερα

Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2.

Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2. Sume kvadrata Koji se prirodni brojevi mogu prikazati kao zbroj kvadrata dva cijela broja? Propozicija 1. Ako su brojevi m i n sume dva kvadrata, onda je i njihov produkt m n takoder suma dva kvadrata.

Διαβάστε περισσότερα

MATEMATIKA 2. Grupa 1 Rexea zadataka. Prvi pismeni kolokvijum, Dragan ori

MATEMATIKA 2. Grupa 1 Rexea zadataka. Prvi pismeni kolokvijum, Dragan ori MATEMATIKA 2 Prvi pismeni kolokvijum, 14.4.2016 Grupa 1 Rexea zadataka Dragan ori Zadaci i rexea 1. unkcija f : R 2 R definisana je sa xy 2 f(x, y) = x2 + y sin 3 2 x 2, (x, y) (0, 0) + y2 0, (x, y) =

Διαβάστε περισσότερα

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost M086 LA 1 M106 GRP Tema: CSB nejednakost. 19. 10. 2017. predavač: Rudolf Scitovski, Darija Marković asistent: Darija Brajković, Katarina Vincetić P 1 www.fizika.unios.hr/grpua/ 1 Baza vektorskog prostora.

Διαβάστε περισσότερα

1. zadatak , 3 Dakle, sva kompleksna re{ewa date jedna~ine su x 1 = x 2 = 1 (dvostruko re{ewe), x 3 = 1 + i

1. zadatak , 3 Dakle, sva kompleksna re{ewa date jedna~ine su x 1 = x 2 = 1 (dvostruko re{ewe), x 3 = 1 + i PRIPREMA ZA II PISMENI IZ ANALIZE SA ALGEBROM. zadatak Re{avawe algebarskih jedna~ina tre}eg i ~etvrtog stepena. U skupu kompleksnih brojeva re{iti jedna~inu: a x 6x + 9 = 0; b x + 9x 2 + 8x + 28 = 0;

Διαβάστε περισσότερα

ELEKTROTEHNIČKI ODJEL

ELEKTROTEHNIČKI ODJEL MATEMATIKA. Neka je S skup svih živućih državljana Republike Hrvatske..04., a f preslikavanje koje svakom elementu skupa S pridružuje njegov horoskopski znak (bez podznaka). a) Pokažite da je f funkcija,

Διαβάστε περισσότερα

PID: Domen P je glavnoidealski [PID] akko svaki ideal u P je glavni (generisan jednim elementom; oblika ap := {ab b P }, za neko a P ).

PID: Domen P je glavnoidealski [PID] akko svaki ideal u P je glavni (generisan jednim elementom; oblika ap := {ab b P }, za neko a P ). 0.1 Faktorizacija: ID, ED, PID, ND, FD, UFD Definicija. Najava pojmova: [ID], [ED], [PID], [ND], [FD] i [UFD]. ID: Komutativan prsten P, sa jedinicom 1 0, je integralni domen [ID] oblast celih), ili samo

Διαβάστε περισσότερα

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k. 1 3 Skupovi brojeva 3.1 Skup prirodnih brojeva - N N = {1, 2, 3,...} Aksiom matematičke indukcije Neka je N skup prirodnih brojeva i M podskup od N. Ako za M vrijede svojstva: 1) 1 M 2) n M (n + 1) M,

Διαβάστε περισσότερα

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1. Pismeni ispit iz matematike 0 008 GRUPA A Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: λ + z = Ispitati funkciju i nacrtati njen grafik: + ( λ ) + z = e Izračunati

Διαβάστε περισσότερα

IZVODI ZADACI (I deo)

IZVODI ZADACI (I deo) IZVODI ZADACI (I deo Najpre da se podsetimo tablice i osnovnih pravila:. C0.. (. ( n n n-. (a a lna 6. (e e 7. (log a 8. (ln ln a (>0 9. ( 0 0. (>0 (ovde je >0 i a >0. (cos. (cos - π. (tg kπ cos. (ctg

Διαβάστε περισσότερα

ASIMPTOTE FUNKCIJA. Dakle: Asimptota je prava kojoj se funkcija približava u beskonačno dalekoj tački. Postoje tri vrste asimptota:

ASIMPTOTE FUNKCIJA. Dakle: Asimptota je prava kojoj se funkcija približava u beskonačno dalekoj tački. Postoje tri vrste asimptota: ASIMPTOTE FUNKCIJA Naš savet je da najpre dobro proučite granične vrednosti funkcija Neki profesori vole da asimptote funkcija ispituju kao ponašanje funkcije na krajevima oblasti definisanosti, pa kako

Διαβάστε περισσότερα

Konstruisati efikasan algoritam znači dati skup preciznih uputstava kako doći do rešenja zadatog problema Algoritmi se mogu opisivati:

Konstruisati efikasan algoritam znači dati skup preciznih uputstava kako doći do rešenja zadatog problema Algoritmi se mogu opisivati: Staša Vujičić Konstruisati efikasan algoritam znači dati skup preciznih uputstava kako doći do rešenja zadatog problema Algoritmi se mogu opisivati: pseudo jezikom prirodnim jezikom dijagramom toka. 2

Διαβάστε περισσότερα

Verovatnoća i Statistika I deo Teorija verovatnoće (zadaci) Beleške dr Bobana Marinkovića

Verovatnoća i Statistika I deo Teorija verovatnoće (zadaci) Beleške dr Bobana Marinkovića Verovatnoća i Statistika I deo Teorija verovatnoće zadaci Beleške dr Bobana Marinkovića Iz skupa, 2,, 00} bira se na slučajan način 5 brojeva Odrediti skup elementarnih dogadjaja ako se brojevi biraju

Διαβάστε περισσότερα

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A Ime i prezime: 1. Prikazane su tačke A, B i C i prave a,b i c. Upiši simbole Î, Ï, Ì ili Ë tako da dobijeni iskazi

Διαβάστε περισσότερα

SKUPOVI I SKUPOVNE OPERACIJE

SKUPOVI I SKUPOVNE OPERACIJE SKUPOVI I SKUPOVNE OPERACIJE Ne postoji precizna definicija skupa (postoji ali nama nije zanimljiva u ovom trenutku), ali mi možemo koristiti jednu definiciju koja će nam donekle dočarati šta su zapravo

Διαβάστε περισσότερα

Matematička analiza 1 dodatni zadaci

Matematička analiza 1 dodatni zadaci Matematička analiza 1 dodatni zadaci 1. Ispitajte je li funkcija f() := 4 4 5 injekcija na intervalu I, te ako jest odredite joj sliku i inverz, ako je (a) I = [, 3), (b) I = [1, ], (c) I = ( 1, 0].. Neka

Διαβάστε περισσότερα

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola.

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola. KVADRATNA FUNKCIJA Kvadratna funkcija je oblika: = a + b + c Gde je R, a 0 i a, b i c su realni brojevi. Kriva u ravni koja predstavlja grafik funkcije = a + b + c je parabola. Najpre ćemo naučiti kako

Διαβάστε περισσότερα

Deljivost. 1. Ispitati kada izraz (n 2) 3 + n 3 + (n + 2) 3,n N nije deljiv sa 18.

Deljivost. 1. Ispitati kada izraz (n 2) 3 + n 3 + (n + 2) 3,n N nije deljiv sa 18. Deljivost 1. Ispitati kada izraz (n 2) 3 + n 3 + (n + 2) 3,n N nije deljiv sa 18. Rešenje: Nazovimo naš izraz sa I.Važi 18 I 2 I 9 I pa možemo da posmatramo deljivost I sa 2 i 9.Iz oblika u kom je dat

Διαβάστε περισσότερα

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET Riješiti jednačine: a) 5 = b) ( ) 3 = c) + 3+ = 7 log3 č) = 8 + 5 ć) sin cos = d) 5cos 6cos + 3 = dž) = đ) + = 3 e) 6 log + log + log = 7 f) ( ) ( ) g) ( ) log

Διαβάστε περισσότερα

7 Algebarske jednadžbe

7 Algebarske jednadžbe 7 Algebarske jednadžbe 7.1 Nultočke polinoma Skup svih polinoma nad skupom kompleksnih brojeva označavamo sa C[x]. Definicija. Nultočka polinoma f C[x] je svaki kompleksni broj α takav da je f(α) = 0.

Διαβάστε περισσότερα

PROBNI TEST ZA PRIJEMNI ISPIT IZ MATEMATIKE

PROBNI TEST ZA PRIJEMNI ISPIT IZ MATEMATIKE Fakultet Tehničkih Nauka, Novi Sad PROBNI TEST ZA PRIJEMNI ISPIT IZ MATEMATIKE 1 Za koje vrednosti parametra p R polinom f x) = x + p + 1)x p ima tačno jedan, i to pozitivan realan koren? U skupu realnih

Διαβάστε περισσότερα

Zadaci iz Osnova matematike

Zadaci iz Osnova matematike Zadaci iz Osnova matematike 1. Riješiti po istinitosnoj vrijednosti iskaza p, q, r jednačinu τ(p ( q r)) =.. Odrediti sve neekvivalentne iskazne formule F = F (p, q) za koje je iskazna formula p q p F

Διαβάστε περισσότερα

numeričkih deskriptivnih mera.

numeričkih deskriptivnih mera. DESKRIPTIVNA STATISTIKA Numeričku seriju podataka opisujemo pomoću Numeričku seriju podataka opisujemo pomoću numeričkih deskriptivnih mera. Pokazatelji centralne tendencije Aritmetička sredina, Medijana,

Διαβάστε περισσότερα

Ispit održan dana i tačka A ( 3,3, 4 ) x x + 1

Ispit održan dana i tačka A ( 3,3, 4 ) x x + 1 Ispit održan dana 9 0 009 Naći sve vrijednosti korjena 4 z ako je ( ) 8 y+ z Data je prava a : = = kroz tačku A i okomita je na pravu a z = + i i tačka A (,, 4 ) Naći jednačinu prave b koja prolazi ( +

Διαβάστε περισσότερα

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI)

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI) IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI) Izračunavanje pokazatelja načina rada OTVORENOG RM RASPOLOŽIVO RADNO

Διαβάστε περισσότερα

TRIGONOMETRIJSKE FUNKCIJE I I.1.

TRIGONOMETRIJSKE FUNKCIJE I I.1. TRIGONOMETRIJSKE FUNKCIJE I I Odredi na brojevnoj trigonometrijskoj kružnici točku Et, za koju je sin t =,cost < 0 Za koje realne brojeve a postoji realan broj takav da je sin = a? Izračunaj: sin π tg

Διαβάστε περισσότερα

Algoritmi zadaci za kontrolni

Algoritmi zadaci za kontrolni Algoritmi zadaci za kontrolni 1. Nacrtati algoritam za sabiranje ulaznih brojeva a i b Strana 1 . Nacrtati algoritam za izračunavanje sledeće funkcije: x y x 1 1 x x ako ako je : je : x x 1 x x 1 Strana

Διαβάστε περισσότερα

RAČUNSKE VEŽBE IZ PREDMETA POLUPROVODNIČKE KOMPONENTE (IV semestar modul EKM) IV deo. Miloš Marjanović

RAČUNSKE VEŽBE IZ PREDMETA POLUPROVODNIČKE KOMPONENTE (IV semestar modul EKM) IV deo. Miloš Marjanović Univerzitet u Nišu Elektronski fakultet RAČUNSKE VEŽBE IZ PREDMETA (IV semestar modul EKM) IV deo Miloš Marjanović MOSFET TRANZISTORI ZADATAK 35. NMOS tranzistor ima napon praga V T =2V i kroz njega protiče

Διαβάστε περισσότερα

5. Karakteristične funkcije

5. Karakteristične funkcije 5. Karakteristične funkcije Profesor Milan Merkle emerkle@etf.rs milanmerkle.etf.rs Verovatnoća i Statistika-proleće 2018 Milan Merkle Karakteristične funkcije ETF Beograd 1 / 10 Definicija Karakteristična

Διαβάστε περισσότερα

18. listopada listopada / 13

18. listopada listopada / 13 18. listopada 2016. 18. listopada 2016. 1 / 13 Neprekidne funkcije Važnu klasu funkcija tvore neprekidne funkcije. To su funkcije f kod kojih mala promjena u nezavisnoj varijabli x uzrokuje malu promjenu

Διαβάστε περισσότερα

Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta.

Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta. auchyjev teorem Neka je f-ja f (z) analitička u jednostruko (prosto) povezanoj oblasti G, i neka je zatvorena kontura koja čitava leži u toj oblasti. Tada je f (z)dz = 0. Postoji više dokaza ovog teorema,

Διαβάστε περισσότερα

KOMUTATIVNI I ASOCIJATIVNI GRUPOIDI. NEUTRALNI ELEMENT GRUPOIDA.

KOMUTATIVNI I ASOCIJATIVNI GRUPOIDI. NEUTRALNI ELEMENT GRUPOIDA. KOMUTATIVNI I ASOCIJATIVNI GRUPOIDI NEUTRALNI ELEMENT GRUPOIDA 1 Grupoid (G, ) je asocijativa akko važi ( x, y, z G) x (y z) = (x y) z Grupoid (G, ) je komutativa akko važi ( x, y G) x y = y x Asocijativa

Διαβάστε περισσότερα

OBLAST DEFINISANOSTI FUNKCIJE (DOMEN) Pre nego što krenete sa proučavanjem ovog fajla, obavezno pogledajte fajl ELEMENTARNE FUNKCIJE, jer se na

OBLAST DEFINISANOSTI FUNKCIJE (DOMEN) Pre nego što krenete sa proučavanjem ovog fajla, obavezno pogledajte fajl ELEMENTARNE FUNKCIJE, jer se na OBLAST DEFINISANOSTI FUNKCIJE (DOMEN) Prva tačka u ispitivanju toka unkcije je odredjivanje oblasti deinisanosti, u oznaci Pre nego što krenete sa proučavanjem ovog ajla, obavezno pogledajte ajl ELEMENTARNE

Διαβάστε περισσότερα

Riješeni zadaci: Limes funkcije. Neprekidnost

Riješeni zadaci: Limes funkcije. Neprekidnost Riješeni zadaci: Limes funkcije. Neprekidnost Limes funkcije Neka je 0 [a, b] i f : D R, gdje je D = [a, b] ili D = [a, b] \ { 0 }. Kažemo da je es funkcije f u točki 0 jednak L i pišemo f ) = L, ako za

Διαβάστε περισσότερα

1 Promjena baze vektora

1 Promjena baze vektora Promjena baze vektora Neka su dane dvije različite uredene baze u R n, označimo ih s A = (a, a,, a n i B = (b, b,, b n Svaki vektor v R n ima medusobno različite koordinatne zapise u bazama A i B Zapis

Διαβάστε περισσότερα

Prvi pismeni zadatak iz Analize sa algebrom novembar Ispitati znak funkcije f(x) = tgx x x3. 2. Naći graničnu vrednost lim x a

Prvi pismeni zadatak iz Analize sa algebrom novembar Ispitati znak funkcije f(x) = tgx x x3. 2. Naći graničnu vrednost lim x a Testovi iz Analize sa algebrom 4 septembar - oktobar 009 Ponavljanje izvoda iz razreda (f(x) = x x ) Ispitivanje uslova Rolove teoreme Ispitivanje granične vrednosti f-je pomoću Lopitalovog pravila 4 Razvoj

Διαβάστε περισσότερα

Algoritmi i strukture podataka

Algoritmi i strukture podataka Algoritmi i strukture podataka vežbe 1 Mirko Stojadinović 6. oktobar 2015 1 1 Složenost algoritama Postoje 3 mere na osnovu kojih se porede efikasnosti algoritama: 1. najgori mogući slučaj 2. prosečan

Διαβάστε περισσότερα

Dvanaesti praktikum iz Analize 1

Dvanaesti praktikum iz Analize 1 Dvaaesti praktikum iz Aalize Zlatko Lazovi 20. decembar 206.. Dokazati da fukcija f = 5 l tg + 5 ima bar jedu realu ulu. Ree e. Oblast defiisaosti fukcije je D f = k Z da postoji ula fukcije a 0, π 2.

Διαβάστε περισσότερα

Jednodimenzionalne slučajne promenljive

Jednodimenzionalne slučajne promenljive Jednodimenzionalne slučajne promenljive Definicija slučajne promenljive Neka je X f-ja def. na prostoru verovatnoća (Ω, F, P) koja preslikava prostor el. ishoda Ω u skup R realnih brojeva: (1)Skup {ω/

Διαβάστε περισσότερα

1 Svojstvo kompaktnosti

1 Svojstvo kompaktnosti 1 Svojstvo kompaktnosti 1 Svojstvo kompaktnosti U ovoj lekciji će se koristiti neka svojstva realnih brojeva sa kojima se čitalac već upoznao tokom kursa iz uvoda u analizu. Na primer, važi Kantorov princip:

Διαβάστε περισσότερα

DRUGI KOLOKVIJUM IZ MATEMATIKE 9x + 6y + z = 1 4x 2y + z = 1 x + 2y + 3z = 2. je neprekidna za a =

DRUGI KOLOKVIJUM IZ MATEMATIKE 9x + 6y + z = 1 4x 2y + z = 1 x + 2y + 3z = 2. je neprekidna za a = x, y, z) 2 2 1 2. Rešiti jednačinu: 2 3 1 1 2 x = 1. x = 3. Odrediti rang matrice: rang 9x + 6y + z = 1 4x 2y + z = 1 x + 2y + 3z = 2. 2 0 1 1 1 3 1 5 2 8 14 10 3 11 13 15 = 4. Neka je A = x x N x < 7},

Διαβάστε περισσότερα

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z. Pismeni ispit iz matematike 06 007 Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj z = + i, zatim naći z Ispitati funkciju i nacrtati grafik : = ( ) y e + 6 Izračunati integral:

Διαβάστε περισσότερα

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto Trigonometrija Adicijske formule Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto Razumijevanje postupka izrade složenijeg matematičkog problema iz osnova trigonometrije

Διαβάστε περισσότερα

Zadaci iz trigonometrije za seminar

Zadaci iz trigonometrije za seminar Zadaci iz trigonometrije za seminar FON: 1. Vrednost izraza sin 1 cos 6 jednaka je: ; B) 1 ; V) 1 1 + 1 ; G) ; D). 16. Broj rexea jednaqine sin x cos x + cos x = sin x + sin x na intervalu π ), π je: ;

Διαβάστε περισσότερα

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D} Matematika 1 Funkcije radni nerecenzirani materijal za predavanja Definicija 1. Neka su D i K bilo koja dva neprazna skupa. Postupak f koji svakom elementu x D pridružuje točno jedan element y K zovemo funkcija

Διαβάστε περισσότερα

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama.

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama. Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama. a b Verovatno a da sluqajna promenljiva X uzima vrednost iz intervala

Διαβάστε περισσότερα

ELEMENTARNA MATEMATIKA 1

ELEMENTARNA MATEMATIKA 1 Na kolokviju nije dozvoljeno koristiti ni²ta osim pribora za pisanje. Zadatak 1. Ispitajte odnos skupova: C \ (A B) i (A C) (C \ B). Rje²enje: Neka je x C \ (A B). Tada imamo x C i x / A B = (A B) \ (A

Διαβάστε περισσότερα

Program testirati pomoću podataka iz sledeće tabele:

Program testirati pomoću podataka iz sledeće tabele: Deo 2: Rešeni zadaci 135 Vrednost integrala je I = 2.40407 42. Napisati program za izračunavanje koeficijenta proste linearne korelacije (Pearsonovog koeficijenta) slučajnih veličina X = (x 1,..., x n

Διαβάστε περισσότερα

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola.

KVADRATNA FUNKCIJA.   Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola. KVADRATNA FUNKCIJA Kvadratna funkcija je oblika: a + b + c Gde je R, a 0 i a, b i c su realni brojevi. Kriva u ravni koja predstavlja grafik funkcije a + b + c je parabola. Najpre ćemo naučiti kako izgleda

Διαβάστε περισσότερα

Fakultet tehničkih nauka, Softverske i informacione tehnologije, Matematika 2 KOLOKVIJUM 1. Prezime, ime, br. indeksa:

Fakultet tehničkih nauka, Softverske i informacione tehnologije, Matematika 2 KOLOKVIJUM 1. Prezime, ime, br. indeksa: Fakultet tehničkih nauka, Softverske i informacione tehnologije, Matematika KOLOKVIJUM 1 Prezime, ime, br. indeksa: 4.7.1 PREDISPITNE OBAVEZE sin + 1 1) lim = ) lim = 3) lim e + ) = + 3 Zaokružiti tačne

Διαβάστε περισσότερα

Sistemi veštačke inteligencije primer 1

Sistemi veštačke inteligencije primer 1 Sistemi veštačke inteligencije primer 1 1. Na jeziku predikatskog računa formalizovati rečenice: a) Miloš je slikar. b) Sava nije slikar. c) Svi slikari su umetnici. Uz pomoć metode rezolucije dokazati

Διαβάστε περισσότερα

Glava 1. Realne funkcije realne promen ive. 1.1 Elementarne funkcije

Glava 1. Realne funkcije realne promen ive. 1.1 Elementarne funkcije Glava 1 Realne funkcije realne promen ive 1.1 Elementarne funkcije Neka su dati skupovi X i Y. Ukoliko svakom elementu skupa X po nekom pravilu pridruimo neki, potpuno odreeni, element skupa Y kaemo da

Διαβάστε περισσότερα

VJEŽBE 3 BIPOLARNI TRANZISTORI. Slika 1. Postoje npn i pnp bipolarni tranziostori i njihovi simboli su dati na slici 2 i to npn lijevo i pnp desno.

VJEŽBE 3 BIPOLARNI TRANZISTORI. Slika 1. Postoje npn i pnp bipolarni tranziostori i njihovi simboli su dati na slici 2 i to npn lijevo i pnp desno. JŽ 3 POLAN TANZSTO ipolarni tranzistor se sastoji od dva pn spoja kod kojih je jedna oblast zajednička za oba i naziva se baza, slika 1 Slika 1 ipolarni tranzistor ima 3 izvoda: emitor (), kolektor (K)

Διαβάστε περισσότερα

Linearna algebra 2 prvi kolokvij,

Linearna algebra 2 prvi kolokvij, Linearna algebra 2 prvi kolokvij, 27.. 20.. Za koji cijeli broj t je funkcija f : R 4 R 4 R definirana s f(x, y) = x y (t + )x 2 y 2 + x y (t 2 + t)x 4 y 4, x = (x, x 2, x, x 4 ), y = (y, y 2, y, y 4 )

Διαβάστε περισσότερα

1 Aksiomatska definicija skupa realnih brojeva

1 Aksiomatska definicija skupa realnih brojeva 1 Aksiomatska definicija skupa realnih brojeva Definicija 1 Polje realnih brojeva je skup R = {x, y, z...} u kojemu su definirane dvije binarne operacije zbrajanje (oznaka +) i množenje (oznaka ) i jedna binarna

Διαβάστε περισσότερα

Zadatak 1 Dokazati da simetrala ugla u trouglu deli naspramnu stranu u odnosu susednih strana.

Zadatak 1 Dokazati da simetrala ugla u trouglu deli naspramnu stranu u odnosu susednih strana. Zadatak 1 Dokazati da simetrala ugla u trouglu deli naspramnu stranu u odnosu susednih strana. Zadatak 2 Dokazati da se visine trougla seku u jednoj tački ortocentar. 1 Dvostruki vektorski proizvod Važi

Διαβάστε περισσότερα

Neka su A i B proizvoljni neprazni skupovi. Korespondencija iz skupa A u skup B definiše se kao proizvoljan podskup f Dekartovog proizvoda A B.

Neka su A i B proizvoljni neprazni skupovi. Korespondencija iz skupa A u skup B definiše se kao proizvoljan podskup f Dekartovog proizvoda A B. Korespondencije Neka su A i B proizvoljni neprazni skupovi. Korespondencija iz skupa A u skup B definiše se kao proizvoljan podskup f Dekartovog proizvoda A B. Pojmovi B pr 2 f A B f prva projekcija od

Διαβάστε περισσότερα

RIJEŠENI ZADACI I TEORIJA IZ

RIJEŠENI ZADACI I TEORIJA IZ RIJEŠENI ZADACI I TEORIJA IZ LOGARITAMSKA FUNKCIJA SVOJSTVA LOGARITAMSKE FUNKCIJE OSNOVE TRIGONOMETRIJE PRAVOKUTNOG TROKUTA - DEFINICIJA TRIGONOMETRIJSKIH FUNKCIJA - VRIJEDNOSTI TRIGONOMETRIJSKIH FUNKCIJA

Διαβάστε περισσότερα

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011. Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika Monotonost i ekstremi Katica Jurasić Rijeka, 2011. Ishodi učenja - predavanja Na kraju ovog predavanja moći ćete:,

Διαβάστε περισσότερα

10 Iskazni račun - deduktivni sistem za iskaznu logiku

10 Iskazni račun - deduktivni sistem za iskaznu logiku 10 Iskazni račun - deduktivni sistem za iskaznu logiku Definicija 20 Iskazni račun je deduktivni sistem H = X, F orm, Ax, R, gde je X = S {,, (, )}, gde S = {p 1, p 2,..., p n,... }, F orm je skup iskaznih

Διαβάστε περισσότερα

I Pismeni ispit iz matematike 1 I

I Pismeni ispit iz matematike 1 I I Pismeni ispit iz matematike I 27 januar 2 I grupa (25 poena) str: Neka je A {(x, y, z): x, y, z R, x, x y, z > } i ako je operacija definisana sa (x, y, z) (u, v, w) (xu + vy, xv + uy, wz) Ispitati da

Διαβάστε περισσότερα

Klasifikacija blizu Kelerovih mnogostrukosti. konstantne holomorfne sekcione krivine. Kelerove. mnogostrukosti. blizu Kelerove.

Klasifikacija blizu Kelerovih mnogostrukosti. konstantne holomorfne sekcione krivine. Kelerove. mnogostrukosti. blizu Kelerove. Klasifikacija blizu Teorema Neka je M Kelerova mnogostrukost. Operator krivine R ima sledeća svojstva: R(X, Y, Z, W ) = R(Y, X, Z, W ) = R(X, Y, W, Z) R(X, Y, Z, W ) + R(Y, Z, X, W ) + R(Z, X, Y, W ) =

Διαβάστε περισσότερα

Skup svih mogućih ishoda datog opita, odnosno skup svih elementarnih događaja se najčešće obeležava sa E. = {,,,... }

Skup svih mogućih ishoda datog opita, odnosno skup svih elementarnih događaja se najčešće obeležava sa E. = {,,,... } VEROVTNOĆ - ZDI (I DEO) U računu verovatnoće osnovni pojmovi su opit i događaj. Svaki opit se završava nekim ishodom koji se naziva elementarni događaj. Elementarne događaje profesori različito obeležavaju,

Διαβάστε περισσότερα

U raznim oblastima se često javlja potreba da se izmed u izvesnih objekata uspostave izvesne veze, odnosi ili relacije.

U raznim oblastima se često javlja potreba da se izmed u izvesnih objekata uspostave izvesne veze, odnosi ili relacije. Šta je to relacija? U raznim oblastima se često javlja potreba da se izmed u izvesnih objekata uspostave izvesne veze, odnosi ili relacije. Na primer, često se javlja potreba da se izvesni objekti uporede

Διαβάστε περισσότερα