Wyszukiwanie. Algorytmy i Struktury Danych. (c) Marcin Sydow. Dziel i rz d¹. Wyszukiwanie. Statystyki pozycyjne. Podsumowanie

Podobne dokumenty
Strategia "dziel i zwyciężaj"

JAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1

Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II.

c Marcin Sydow Przepªywy Grafy i Zastosowania Podsumowanie 12: Przepªywy w sieciach

ALGORYTMY SORTOWANIA DANYCH

12: Znajdowanie najkrótszych ±cie»ek w grafach

Przekroje Dedekinda 1

XVII Warmi«sko-Mazurskie Zawody Matematyczne

Relacj binarn okre±lon w zbiorze X nazywamy podzbiór ϱ X X.

O pewnym zadaniu olimpijskim

Szeregowanie zada« Wykªad nr 5. dr Hanna Furma«czyk. 4 kwietnia 2013

Algorytmy i struktury danych

Metodydowodzenia twierdzeń

Zestaw 1 ZESTAWY A. a 1 a 2 + a 3 ± a n, gdzie skªadnik a n jest odejmowany, gdy n jest liczb parzyst oraz dodawany w przeciwnym.

Lab. 02: Algorytm Schrage

Programowanie i struktury danych 1 / 44

Programowanie wspóªbie»ne

Algorytmy tekstowe. Andrzej Jastrz bski. Akademia ETI

Algorytmy i Struktury Danych.

Wybrane poj cia i twierdzenia z wykªadu z teorii liczb

Algorytmy i Struktury Danych. (c) Marcin Sydow. Introduction. QuickSort. Sortowanie 2. Limit. CountSort. RadixSort. Summary

Listy i operacje pytania

Podstawowe algorytmy grafowe i ich zastosowania

Maszyny Turinga i problemy nierozstrzygalne. Maszyny Turinga i problemy nierozstrzygalne

Minimalne drzewa rozpinaj ce

Rekurencyjne struktury danych

Przetwarzanie sygnaªów

Podstawowe algorytmy grafowe i ich zastosowania

1 Metody iteracyjne rozwi zywania równania f(x)=0

Metody dowodzenia twierdze«

Uczenie Wielowarstwowych Sieci Neuronów o

Przykªady problemów optymalizacji kombinatorycznej

x y x y x y x + y x y

Bash i algorytmy. Elwira Wachowicz. 20 lutego

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14

Luty 2001 Algorytmy (4) 2000/2001

Funkcje, wielomiany. Informacje pomocnicze

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Ukªady równa«liniowych

Baza danych - Access. 2 Budowa bazy danych

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA. W obu podpunktach zakªadamy,»e kolejno± ta«ców jest wa»na.

Rekurencja. Algorytmy i Struktury Danych. (c) Marcin Sydow. Wst p. Fibonacci. Liniowe 2. rz du. Wie»e Hanoi. Wa»ne 3 przypadki

i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski 5 kwietnia 2017

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki.

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Matematyka wykªad 1. Macierze (1) Andrzej Torój. 17 wrze±nia Wy»sza Szkoªa Zarz dzania i Prawa im. H. Chodkowskiej

Algorytmy zwiazane z gramatykami bezkontekstowymi

Vincent Van GOGH: M»czyzna pij cy li»ank kawy. Radosªaw Klimek. J zyk programowania Java

Rekurencja. Dla rozwiązania danego problemu, algorytm wywołuje sam siebie przy rozwiązywaniu podobnych podproblemów. Przykład: silnia: n! = n(n-1)!

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych.

Zadanie 1 Przygotuj algorytm programu - sortowanie przez wstawianie.

Funkcja kwadratowa, wielomiany oraz funkcje wymierne

Szeregowanie zada« Wykªad nr 4. dr Hanna Furma«czyk. 21 marca 2013

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Chess. Joanna Iwaniuk. 9 marca 2010

Algorytmy i struktury danych

Ekonometria Bayesowska

1 a + b 1 = 1 a + 1 b 1. (a + b 1)(a + b ab) = ab, (a + b)(a + b ab 1) = 0, (a + b)[a(1 b) + (b 1)] = 0,

Algorytmy i struktury danych

KLASYCZNE ZDANIA KATEGORYCZNE. ogólne - orzekaj co± o wszystkich desygnatach podmiotu szczegóªowe - orzekaj co± o niektórych desygnatach podmiotu

Podstawy matematyki dla informatyków. Funkcje. Funkcje caªkowite i cz ±ciowe. Deniowanie funkcji. Wykªad pa¹dziernika 2012

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

X WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne)

Algorytmy sortowania. Przykład Posortuj metod b belkow zbiór pi ciu elementów: w porz dku rosn cym. Funkcja porównuj ca przyjmuje posta :

Matematyka dyskretna dla informatyków

Podstawowe algorytmy i ich implementacje w C. Wykład 9

Teoria grafów i jej zastosowania. 1 / 126

Strategia czy intuicja?

wiczenie 1 Podstawy j zyka Java. Instrukcje warunkowe

Wojewódzki Konkurs Matematyczny

Matematyka dyskretna dla informatyków

Skrypt do Algorytmów i Struktur Danych

Algorytmy i Struktury Danych. (c) Marcin Sydow. Sortowanie Selection Sort Insertion Sort Merge Sort. Sortowanie 1. Listy dowiązaniowe.

Wst p do informatyki. Systemy liczbowe. Piotr Fulma«ski. 21 pa¹dziernika Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

Wykład 3. Metoda dziel i zwyciężaj

Mierzalne liczby kardynalne

Podstawy matematyki dla informatyków

PRZYPOMNIENIE Ka»d przestrze«wektorow V, o wymiarze dim V = n < nad ciaªem F mo»na jednoznacznie odwzorowa na przestrze«f n n-ek uporz dkowanych:

Programowanie wspóªbie»ne

Sortowanie - wybrane algorytmy

Wst p teoretyczny do wiczenia nr 3 - Elementy kombinatoryki

Macierze i Wyznaczniki

Ekonometria - wykªad 8

Twierdzenie Wainera. Marek Czarnecki. Warszawa, 3 lipca Wydziaª Filozoi i Socjologii Uniwersytet Warszawski

Dzi kuj za uwag! Spotkania z Pythonem. Cz ± 1 - podstawy - rozwi zania zada« Michaª Alichniewicz. Gda«sk Studenckie Koªo Automatyków SKALP

STRUKTURY DANYCH. dane wej±ciowe problemu, ewentualne dane po±rednie, dane wynikowe (czyli rozwi zanie problemu).

Sortowanie danych. Jolanta Bachan. Podstawy programowania

Liczby zmiennoprzecinkowe

Programowanie wspóªbie»ne

Algorytmy i Struktury Danych

Podziaª pracy. Cz ± II. 1 Tablica sortuj ca. Rozwi zanie

LZNK. Rozkªad QR. Metoda Householdera

! "# $ % "! &#"'% "! &( #'% "! )

Metody numeryczne i statystyka dla in»ynierów

Geometria. Šukasz Dawidowski. 25 kwietnia 2016r. Powtórki maturalne

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

A = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy.

Subversion - jak dziaªa

Logika dla matematyków i informatyków Wykªad 1

Najkrótsze drogi w grafach z wagami

Transkrypt:

Zawarto± tego wykªadu: reguªa dziel i rz d¹ wyszukiwanie algorytm wyszukiwania binarnego statystyki 2. najmniejsza warto± w ci gu (algorytm turniejowy - idea) algorytm (wyszukiwanie k-tej statystyki j)

Jest to jedna z najskuteczniejszych technik projektowania algorytmów. Dzielimy problem na podproblemy (czyli dane wej±ciowe na mniejsze cz ±ci) i wyja±niamy jak z rozwi za«tych podproblemów otrzyma rozwi zanie oryginalnego problemu. Cz sto jest implementowana za pomoc rekursji, czyli techniki programowania polegaj cej na wywoªaniu przez funkcj jej samej dla mniejszych danych wej±ciowych. Nazwa reguªy zapo»yczona jest z identycznie brzmi cej nazwy strategii w polityce polegaj cej na podzieleniu siª przeciwnika na mniejsze cz ±ci, czyni c go sªabszym i bardziej podatnym na wewn trzne konikty. Przypisywana oryginalnie Filipowi II Macedo«skiemu, królowi Macedonii (382-336 przed Chrystusem) jest permanentnie stosowana w polityce, nie wyª czaj c czasu obecnego.

Problem wyszukiwania search(s, len, key) Input: S - ci g liczb caªkowitych; len - dªugo± ci gu; key (klucz) - liczba caªkowita (wyszukiwana w ci gu S) Output: indeks (liczba naturalna mniejsza od len), pod któr w ci gu S znajduje si liczba key (S[index]==key) albo -1 je±li klucz jest nieobecny w S Przykªad: S = (3,5,8,2,1,8,4,2,9): search(s, 9, 2) powinno zwróci : 3 search(s, 9, 7) powinno zwróci : -1

, c.d. Naturalnym kandydatem na operacj dominuj c w algorytmach implementuj cych problem wyszukiwania jest porównanie (pomi dzy kluczem a elementami w ci gu S), natomiast rozmiar danych zawiera dªugo± ci gu len (mo»e te» obejmowa inne parametry, np. algorytm skoku co k) sekwencyjne: Najpro±ciej jest zrealizowa algorytm wyszukiwania przez przegl danie wszystkich indeksów np. od 0 do len-1. Taka realizacja skutkuje liniow pesymistyczn zªo»ono±ci czasow W (len) = len. UWAGA: Zauwa»my,»e pesymistycznej zªo»ono±ci czasowej nie mo»na poprawi zmieniaj c porz dek przegl dania indeksów (gdy» zawsze mo»e si zdarzy,»e np. szukany element jest pod ostatnim sprawdzanym indeksem).

Bardziej efektywne wyszukiwanie? Jaka dodatkowa wªasno± ci gu mogªaby umo»liwi szybsze wyszukiwanie?

Bardziej efektywne wyszukiwanie? Jaka dodatkowa wªasno± ci gu mogªaby umo»liwi szybsze wyszukiwanie? Uporz dkowanie warto±ci ci gu wej±ciowego (np. od najmniejszej do najwi kszej) Zmienimy wi c nieco specykacj problemu,»eby opracowa bardziej efektywne algorytmy.

w ci gu posortowanym Zmodykowana specykacja problemu: Input: S - ci g niemalej co posortowanych (tzn. mog by powtarzaj ce si warto±ci) liczb caªkowitych (indeksowanych od 0); len - naturalna liczba b d c dªugo±ci ci gu S; key (klucz) - wyszukiwana liczba caªkowita Output: indeks (liczba naturalna mniejsza od len), pod któr w ci gu S znajduje si liczba key albo -1 je±li klucz jest nieobecny w S. Przy tak zmienionej specykacji (uporz dkowanie ci gu wej±ciowego) mo»na pokusi si o algortymy o pesymistycznej zªo»ono±ci czasowej lepszej ni» W (len) = len.

co k; idea i analiza Je±li ci g wej±ciowy jest posortowany, to mo»liwe jest wyszukiwanie poprzez sprawdzanie co k-tego indeksu (pomijaj c k-1 elementów podczas ka»dego skoku). W przypadku znalezienia pierwszego elementu wi kszego od wyszukiwanego klucza, wystarczy sprawdzi jedynie ostatnio przeskoczone k-1 elementów. Zauwa»my,»e dla len taki algorytm jest w przeci tnym przypadku asymptotycznie k razy szybszy w przeci tnym przypadku ni» normalny algorytm sekwencyjny (dla niewielkich warto±ci k). Równie», przy odpowiednim doborze k 1, pesymistyczna zªo»ono± czasowa tego algorytmu jest odpowiednio ni»sza: W (len) = 1 Θ(len), a wi c te» k k razy szybciej ni» sekwencyjnego. Jest wi c poprawa. Jednak wci» jest to zªo»ono± liniowa, czyli o tym samym rz dzie zªo»ono±ci (czyli jesli dane wzrosn x razy, algorytm b dzie dziaªaª x razy dªu»ej, etc.). Czy mo»liwe jest uzyskanie ni»szej ni» liniowa zªo»ono±ci czasowej? 1 wiczenie: udowodni,»e zachodzi to dla k = len

Wyszukiwania go - idea Przykªad zastosowania dziel i rz d¹ w wyszukiwaniu. search(s, len, key) (wci» zakªadamy tu,»e ci g wej±ciowy jest posortowany niemalej co) wyszukiwania binarnego: 1 dopóki dªugo± ci gu jest dodatnia: 2 porównaj klucz ze ±rodkowym elementem ci gu 3 je±li jest równo±, to zwró wynik (bie» cy indeks) 4 je±li jest ni»szy ni» element - ogranicz dalsze poszukiwania tylko do lewego podci gu (na lewo od bie» cego indeksu) 5 je±li jest wy»szy ni» element - ogranicz dalsze poszukiwania tylko do prawego podci gu (na prawo od bie» cego indeksu) 6 wró do kroku 1 7 je±li dªugo± ci gu spadªa do zera, to nie ma klucza w ci gu

Kod algorytmu wyszukiwania binarnego search(s, len, key){ } l = 0 r = len - 1 while(l <= r){ } m = (l + r)/2 if(s[m] == key) return m else return -1 if(s[m] > key) r = m - 1 else l = m + 1 Uwaga: zakªada si,»e caªy ci g mie±ci si w szybkiej pamieci RAM (ang. random access memory), czyli pami ci o dost pie swobodnym, czyli,»e sprawdzenie dowolnego indeksu S[m] ma czas staªy (jest szybkie) i nie zale»y od m.

Analiza algorytmu wyszukiwania binarnego rozmiar danych: dªugo± ci gu - len operacja dominuj ca: porównanie - (S[m]==key) (zakªadamy,»e caªy ci g jest w RAM) Zauwa»my,»e z ka»d iteracj bie» cy ci g staje si 2 razy krótszy. zatrzymuje si, gdy dªugo± bie» cego ci gu spadnie do 0 (lub wcze±niej znajdziemy klucz). W (len) = Θ(log 2 (len)) A(len) = Θ(log 2 (len)) S(len) = O(1) (zaªo»enie o pami ci RAM jest istotne dla faktu,»e ka»da operacja S(m)==key ma czas staªy, w przeciwie«stwie do sytuacji, gdyby np. dane byªy na wolnym dysku)

K-ta statystyka pozycyjna w ci gu to po prostu k-ty najmniejszy (lub najwi kszy) element w tym ci gu. Przykªad: szukanie minimum jest szczególnym przypadkiem, dla k=1 W przypadku, gdy ci g jest posortowany zadanie byªoby trywialne: wynik byªby po prostu na k-tej pozycji posortowanego ci gu. Dlatego, w dalszej cz ±ci tego wykªadu powrócimy znowu do wersji wyszukiwania dla ci gów nieuporz dkowanych.

2-giego najmniejszego elementu w ci gu nieuporz dkowanym second(s, len) (uwaga: nie ma ju» zaªo»enia o uporz dkowaniu ci gu wej±ciowego, ale dla uproszczenia zakªadamy,»e wszystkie elementy s ró»ne) Input: S - ci g liczb caªkowitych; len - dªugo± ci gu Output: drugi najmniejszy element w ci gu S Rozmiar danych: len; operacja dominuj ca: porównanie Rozwi zanie proste: znajd¹ minimum, usu«je z ci gu, i znajd¹ ponownie minimum (wymaga 2 len 1 porówna«)

2-giego najmniejszego elementu w ci gu nieuporz dkowanym second(s, len) (uwaga: nie ma ju» zaªo»enia o uporz dkowaniu ci gu wej±ciowego, ale dla uproszczenia zakªadamy,»e wszystkie elementy s ró»ne) Input: S - ci g liczb caªkowitych; len - dªugo± ci gu Output: drugi najmniejszy element w ci gu S Rozmiar danych: len; operacja dominuj ca: porównanie Rozwi zanie proste: znajd¹ minimum, usu«je z ci gu, i znajd¹ ponownie minimum (wymaga 2 len 1 porówna«) Jak zrobi to u»ywaj c mniejszej liczby porówna«? (z mniejsz zªo»ono±ci czasow )

turniejowy - idea Zastosujmy reguª dziel i rz d¹: Spójrzmy na ten problem jak na turniej rozgrywany przez elementy ci gu. W ka»dej fazie turnieju bie» cy zbiór elementów jest dzielony jest na pary elementów, które rozgrywaj gr : mniejszy element wygrywa i przechodzi do nast pnej fazy turnieju. W ten sposób w ka»dej fazie pozostaje tylko ok. poªowy elementów z poprzedniej fazy, dopóki nie pozostanie jeden element (zwyci zca) - jest to najmniejszy element w ci gu. Gdzie jest 2-gi najmniejszy element? (którego szukamy)

turniejowy - idea Zastosujmy reguª dziel i rz d¹: Spójrzmy na ten problem jak na turniej rozgrywany przez elementy ci gu. W ka»dej fazie turnieju bie» cy zbiór elementów jest dzielony jest na pary elementów, które rozgrywaj gr : mniejszy element wygrywa i przechodzi do nast pnej fazy turnieju. W ten sposób w ka»dej fazie pozostaje tylko ok. poªowy elementów z poprzedniej fazy, dopóki nie pozostanie jeden element (zwyci zca) - jest to najmniejszy element w ci gu. Gdzie jest 2-gi najmniejszy element? (którego szukamy) Odpowied¹: pomi dzy elementami, które graªy (i przegraªy) ze zwyci zc (tylko z nim mógª przegra ). Wystarczy wi c w drugiej fazie przeszuka te elementy aby znale¹ wynik.

Analiza algorytmu turniejowego mo»e by naturalnie przedstawiony w postaci drzewa binarnego, gdzie na najni»szym poziomie (li±cie) s wszystkie elementy oryginalnego ci gu a na górze (korze«) jest zwyci zca. Ka»dy poziom odpowiada kolejnej fazie turnieju. Ile jest poziomów (jako funkcja len)?

Analiza algorytmu turniejowego mo»e by naturalnie przedstawiony w postaci drzewa binarnego, gdzie na najni»szym poziomie (li±cie) s wszystkie elementy oryginalnego ci gu a na górze (korze«) jest zwyci zca. Ka»dy poziom odpowiada kolejnej fazie turnieju. Ile jest poziomów (jako funkcja len)? Θ(log 2 (len)) (bo ka»dy poziom zawiera 2 razy mniej elementów ni» ni»szy) Rozmiar danych: len Operacja dominuj ca: porównanie mi dzy 2 elementami Ile jest wszystkich porówna«w pierwszej fazie turnieju?

Analiza algorytmu turniejowego mo»e by naturalnie przedstawiony w postaci drzewa binarnego, gdzie na najni»szym poziomie (li±cie) s wszystkie elementy oryginalnego ci gu a na górze (korze«) jest zwyci zca. Ka»dy poziom odpowiada kolejnej fazie turnieju. Ile jest poziomów (jako funkcja len)? Θ(log 2 (len)) (bo ka»dy poziom zawiera 2 razy mniej elementów ni» ni»szy) Rozmiar danych: len Operacja dominuj ca: porównanie mi dzy 2 elementami Ile jest wszystkich porówna«w pierwszej fazie turnieju? len-1 (dlaczego?)

Analiza algorytmu turniejowego mo»e by naturalnie przedstawiony w postaci drzewa binarnego, gdzie na najni»szym poziomie (li±cie) s wszystkie elementy oryginalnego ci gu a na górze (korze«) jest zwyci zca. Ka»dy poziom odpowiada kolejnej fazie turnieju. Ile jest poziomów (jako funkcja len)? Θ(log 2 (len)) (bo ka»dy poziom zawiera 2 razy mniej elementów ni» ni»szy) Rozmiar danych: len Operacja dominuj ca: porównanie mi dzy 2 elementami Ile jest wszystkich porówna«w pierwszej fazie turnieju? len-1 (dlaczego?) (bo z ka»dym porównaniem odpada dokªadnie jeden element, a na ko«cu zostaje 1 element) W drugiej fazie nale»y jeszcze wyszuka najmniejszy element spo±ród tych, które przegraªy ze zwyci zc (jest ich tyle ile poziomów turnieju) Ostatecznie: W (len) = len 1 + Θ(log 2 (len)) - jest to wi c asymptotycznie 2 razy szybciej ni» dwukrotne szukanie minimum.

K-ta statystyka pozycyjna - (idea) kthsmallest(s, len, k) (nic nie zakªadamy o ci gu S, mo»e by nieuporz dkowany) Input: S - ci g liczb caªkowitych; len - dªugo± ci gu; k - liczba naturalna dodatnia (k <= len) ( Output: element s, który jest k-tym najmniejszym elementem w ci gu S Rozwi zanie naiwne: k razy wyszukujemy element minimalny oznacza to ok. k len porówna«. Jednak zadanie mo»e by znowu rozwi zane efektywniej za pomoc podej±cia dziel i rz d¹

Procedura Przedstawimy teraz pewn pomocnicz procedur : partition(s, l, r) input: S - ci g liczb caªkowitych; l, r - lewy i prawy skrajny indeks aktualnie przetwarzanego podci gu ci gu S. output: i - nalna pozycja elementu medianowego (opis poni»ej) Dziaªanie procedury: bierze dowolny (pierwszy) element ci gu m, i przestawia wszystkie elementy ci gu tak,»e wszystkie elementy na lewo od elementu m s niewi ksze (ale niekoniecznie posortowane) od niego a na prawo niemniejsze. Zwraca ostateczn pozycj i elementu m.

Wykorzystanie procedury Uwaga: dzi ki powy»szej specykacji, je±li zwrócony indeks wynosiªby dokªadnie k, to musi on zawiera k-ty najmniejszy element ci gu. (zaªó»my dla uproszczenia,»e indeksujemy ci g od 0) Je±li natomiast indeks i jest mniejszy od k, to nale»y powtórzy dziaªanie partition na cz ±ci podci gu na prawo od i a w przeciwnym wypadku na lewo od i (dziel i rz d¹). Jest to nieco podobny pomysª do wyszukiwania binarnego, ale tym razem i nie musi by (i rzadko jest) dokªadnie w poªowie ci gu.

Analiza procedury partition Kod procedury podany b dzie w innym wykªadzie (przy okazji algorytmu QuickSort, gdzie równie» jest wykorzystywana). Natomiast wa»ne jest,»e przy zaªo»eniach: Operacja dominuj ca: porównanie 2 elementów Rozmiar danych: dªugo± oryginalnego ci gu n = (r l + 1) Procedura partition mo»e by nietrudno zaprojektowana ze zªo»ono±ci W (n) = n + O(1) (i S(n) = O(1))

(szybkie znajdowanie k-tego najmniejszego elementu w ci gu) wykonaj partition na ci gu je±li zwrócony indeks i jest równy k, to koniec (zwró : S[k]) w przeciwnym wypadku kontynuuj, na podci gu na lewo lub prawo (w zale»no±ci od porównania i z k) od warto±ci k, dopóki zwrócony indeks nie wyniesie dokªadnie k Dzi ki liniowej zªo»ono±ci procedury partition, przeci tna zªo»ono± algorytmu jest liniowa (Θ(n)) niezale»nie od warto±ci k. Uwaga: procedura partition ma jeszcze wa»niejsze zastosowanie w innym algorytmie: sortowania szybkiego (QuickSort), omawianym w innym wykªadzie.

Przykªadowe pytania/problemy: podaj specykacj problemu wyszukiwania klucza w ci gu algorytm co k: podaj specykacj, opisz dziaªanie, dokonaj analizy poprawno±ci i zªo»ono±ci czasowej i zasymuluj jego dziaªanie na danych wej±ciowych algorytm wyszukiwania binarnego: podaj specykacj, opisz dziaªanie, napisz z pami ci kod (wersja z wykªadu), dokonaj analizy poprawno±ci i zªo»ono±ci, zasymuluj dziaªanie na danych wej±ciowych. co to jest statystyka pozycyjna? algorytm turniejowy: specykacja, opis dziaªania, analiza zªo»ono±ci podaj specykacj i zªo»ono± czasow procedury opisz ide algorytmu. dlaczego algorytm ma kwadratow pesymistyczn zªo»ono± czasow?

Dzi kuj za uwag