listopad 2010

Download Listopad 2010

If you can't read please download the document

Upload: ilana

Post on 07-Jan-2016

37 views

Category:

Documents


2 download

DESCRIPTION

Definicja. Historia. Najstarszy algorytm. Spis treści. ALGORYTMY. Klasyfikacja algorytmów. Listopad 2010. Rekurencja. Iteracja. Zadanie. Definicja. Historia. Algorytm opisuje krok po kroku rozwiązanie jakiegoś problemu lub osiągnięcie wyznaczonego celu. - PowerPoint PPT Presentation

TRANSCRIPT

  • Listopad 2010ALGORYTMY

  • Algorytm opisuje krok po kroku rozwizanie jakiego problemu lub osignicie wyznaczonego celu.

    Algorytmem nazywamy skoczony cig czynnoci, przeksztacajcych zbir danych wejciowych na zbir danych wyjciowych (wynikw).Definicja

  • Od pocztkw swojego istnienia czowiek zawsze upraszcza swoje czynnoci i dziaania. Zwykle, pierwszym zamierzeniem w nowym dziaaniu jest osignicie wyznaczonego celu w jakikolwiek sposb.

    Gdy ju potrafimy co zrobi zastanawiamy si, jak to mona zrobi prociej. Przez wieki tworzono opisy rozwizywania rnych problemw, ktre dzisiaj nazywamy algorytmami.

    Historia algorytmw

  • Za najstarsze algorytmy uznawane s:

    algorytm Heronaalgorytm Euklidesaalgorytm Horneraalgorytm Huffmana Najstarsze algorytmy

  • algorytmy proste rozgazione (nie wystpuj albo wystpuj rozgazienia),algorytmy cykliczne mieszane (z powrotami albo bez powrotw),algorytmy rwnolege sekwencyjnesekwencyjne algorytmy, w ktrych instrukcje wykonywane s w porzdku, w jakim zostay wprowadzone;niesekwencyjne (rwnolege, wspbiene) algorytmy, w ktrych nastpstwo midzy pewnymi operacjami nie jest okrelone.algorytmy numeryczne - nienumeryczne (wykonywanie oblicze lub przetwarzanie danych),algorytmy rekurencyjne iteracyjneiteracyjne rodzaj algorytmu i programu, w ktrych wielokrotnie wykonuje si pewne instrukcje, dopki nie zostanie speniony okrelony warunek;rekurencyjne takie procedury, ktre w swojej definicji posiadaj wywoanie samej siebie;Klasyfikacja algorytmw

  • Algorytm prosty a rozgaziony

  • Algorytm cykliczny a mieszany

  • Algorytm rwnolegy a sekwencyjny

  • Algorytm iteracyjny a rekurencyjny

  • Rekurencja albo rekursja (ang. recursion, z ac. recurrere, przybiec z powrotem) to w logice, programowaniu i w matematyce odwoywanie si np. funkcji lub definicji do samej siebie. Wbrew prbom rozrnienia terminw rekursja i rekurencja w rzeczywistoci sowa te maj identyczne znaczenieRekurencja polega na rozwizywaniu problemu w oparciu o rozwizania tego samego problemu dla danych o mniejszych rozmiarach.W informatyce rekurencja jest to sposb rozwizania problemu z zastosowaniem algorytmu rekurencyjnego. Jego realizacj s obliczenia, w ktrym wydzielony podprogram wywouje siebie samego. Rekurencja jest z powodzeniem stosowana w najefektywniejszych algorytmach sortowania.Rekurencja

  • Rekurencyjny opis oblicze jest na og bardziej zwarty ni opis tych samych oblicze bez uycia rekurencji. Taki opis jest stosowany np. przy opisie fraktali, ktre s nawet definiowane jako twory podobne do swoich czci. Zwartoci opisu rekurencyjnego nie zawsze odpowiada jednak efektywno komputerowych realizacji algorytmw.Rekurencja skada si z podania wartoci brzegowej (pocztkowej) i z rwnania wyraajcego ogln warto za pomoc wartoci wczeniejszych wyrazw.Rekurencja

  • W informatyce moemy realizowa szczeglny rodzaj powtrze bez koniecznoci stosowania ptli technik rekurencji.Z technik t spotykamy si w yciu codziennym, jej przykadem jest odbicie w lustrze: jeli popatrzymy w lustro, a za sob odpowiednio ustawimy drugie, to zauwaymy, e odbija si w nim obraz z lustra, ktre mamy przed sob.Kolejnym przykadem moe by obraz, w ktrym wkomponowany jest ten sam obraz.W kadym z tych przykadw dany obraz jest czci samego siebie.Przykadem rekurencji moe by Wiea Hanoi, lub rekurencyjny algorytm Euklidesa, cig Fibonacciego.Rekurencja w naszym otoczeniu

  • Wiee z Hanoi to ciekawe zadanie z algorytmiki. Rozwizanie jest czsto spotykanym modelem mylenia rekurencyjnego, dlatego warto je pozna.Mamy n krkw o malejcych rednicach. Kady z nich posiada wydron dziurk i jest "nadziany" na pierwszy z trzech drkw jakie posiadamy. Pozostae drki s puste.Zadanie polega na przeniesieniu wszystkich krkw z pierwszego drka na drugi przy uyciu trzeciego. Trzeba to jednak zrobi przy dwch zaoeniach:wolno przenosi krki tylko pojedynczo ani przez moment krek wikszy nie moe lee na krku mniejszym Zagadka Wie Hanoi staa si znana w XIX wieku dziki matematykowi douardowi Lucasowi, ktry proponowa zagadk dla 8 krkw. Do sprzedawanego zestawu bya doczona (prawdopodobnie wymylona przez Lucasa) tybetaska legenda, wedug ktrej mnisi w wityni Brahmy rozwizuj t amigwk dla 64 zotych krkw. Legenda mwi, e gdy mnisi zakocz zadanie, nastpi koniec wiata. Zakadajc, e wykonuj 1 ruch na sekund, uoenie wiey zajmie 2641 = 18 446 744 073 709 551 615 (blisko 18 i p tryliona) sekund, czyli okoo 584542 miliardw lat. Dla porwnania: Wszechwiat ma okoo 13,7 mld lat.

    Wiea Hanoi

  • Oznaczmy podstawki przez A, B, Cniech n oznacza liczb krkwponumerujmy krki od najmniejszego u gry do najwikszego u dou

    W celu przeniesienia n krkw z A do B naley:przenie n-1 krkw z A do C wwczas n-ty dysk samotnie pozostaje w Aprzenie n-ty (najwikszy) krek z A do Bprzenie n-1 krkw z C do B

    Wiea Hanoi- algorytm rekurencyjny

  • Iteracja jest jednym z najwaniejszych narzdzi zarwno praktycznego, jak i teoretycznego badania problemw liniowych i nieliniowych. Iteracja (z aciskiego "iteratio", powtarzanie), czyli kolejne przyblianie, oznacza powtarzanie pewnej wzorcowej czynnoci lub procesu. Iteracja w tym sensie wystpuje wtedy, gdy wielokrotnie stosuje si jaki proces numeryczny - by moe bardzo zoony i zawierajcy wiele przykadw uycia iteracji w wszym sensie - po to, aby stopniowo ulepsza wczeniejsze wyniki.Iteracja

  • W informatyce iteracja to czynno powtarzania (najczciej wielokrotnego) tej samej instrukcji (albo wielu instrukcji) w ptli. Mianem iteracji okrela si take operacje wykonywane wewntrz takiej ptli. W odrnieniu od rekurencji, ktra dziaa "od gry", iteracja do obliczenia n+1-szej wartoci wykorzystuje poprzedni, n-t iteracj. Rekurencja dla obliczenia n-tej wartoci potrzebuje zejcia a do pierwszej wartoci.Wystpowanie iteracji jest cech charakterystyczn wielu algorytmw.Iteracja

  • Iteracje moemy podzieli na dwa rodzaje:iteracje ograniczone kiedy wiemy od razu ile razy pewne czynnoci bd powtarzane. Stosowane s jeeli zbir jest okrelony poprzez podanie jego liczebnoci. Iteracje te odbywaj si wedug schematu:powtrz operacje A dokadnie n razyiteracje warunkowe (nieograniczone) kiedy nie wiemy z gry ile razy pewne czynnoci bd powtarzane. Stosowane s jeeli okrelenie koca zbioru odbywa si poprzez wartownika. Schemat wedug ktrego odbywaj si iteracje wyglda nastpujco:dopki speniony jest warunek Q wykonuj operacje Apowtarzaj operacje A, a zostanie speniony warunek QIteracja

  • Iteracje maj szerokie zastosowanie przy tworzeniu fraktali. Przykadem mog by zbiory Julii. W zalenoci od "punktu startu" moemy w wyniku iteracji otrzyma cig, ktry bdzie bd nieograniczony (jego elementy opuszcz kady okrg ze rodkiem w centrum ukadu wsprzdnych) bd te bdzie ograniczony (czyli taki, dla ktrego istnieje okrg - o rodku w centrum ukadu wsprzdnych - jakiego elementy cigu nigdy nie opuszcz).Zbiory takich "punktw startu" w obu przypadkach nazywa si odpowiednio zbiorem uciekinierw lub zbiorem winiw. Oba te zbiory s niepuste i dopeniajce si na paszczynie zespolonej, zatem istnieje tylko jedna - wsplna - ich granica.Przedstawiony przykad dotyczy zbioru rzdu drugiego (gdy iterowany zosta wielomian stopnia drugiego).

    Iteracja

  • Iteracje wykorzystywane s take do projektowania parkietw czy posadzek. Problem ten, dla przypadku pytek w ksztacie wieloktw foremnych, jest ju znany od czasw staroytnych. Ca paszczyzn dzieli si na stykajce si w wierzchokach wielokty foremne, tak aby w kadym wierzchoku stykay si wszystkie przystajce do wybranych wielokty. Poniewa wielokt o n bokach posiada kt o mierze (n - 2) * 1800/ n, a suma miar wszystkich poczonych w wierzchoku ktw wynosi 3600, std przykadowo dla trzech wieloktw (o iloci bokw n1, n2, n3) mamy warunek

    a dla czterech wieloktw (o iloci bokw n1, n2, n3 ,n4)

    Przykadowe projekty parkietw zostan przedstawione na kolejnych slajdach. Mona je zrealizowa w edytorach grafiki (np. Power Point).Iteracja

  • Rozwi doczony test.

    Swoj prac wylij w formie zacznika na [email protected]

    Dzikuj Barbara Kocz

    rdo: www.szkolnictwo.plZadanie

    ********************