1 / 20

Listopad 2010

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.

ilana
Télécharger la présentation

Listopad 2010

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Definicja Historia Najstarszy algorytm Spis treści ALGORYTMY Klasyfikacja algorytmów Listopad 2010 Rekurencja Iteracja Zadanie

  2. Definicja Historia Algorytm opisuje krok po kroku rozwiązanie jakiegoś problemu lub osiągnięcie wyznaczonego celu. Algorytmem nazywamy skończony ciąg czynności, przekształcających zbiór danych wejściowych na zbiór danych wyjściowych (wyników). Najstarszy algorytm Spis treści Definicja Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  3. Definicja Historia Od początków swojego istnienia człowiek zawsze upraszczał swoje czynności i działania. Zwykle, pierwszym zamierzeniem w nowym działaniu jest osiągnięcie wyznaczonego celu w jakikolwiek sposób. Gdy już potrafimy coś zrobić zastanawiamy się, jak to można zrobić prościej. Przez wieki tworzono opisy rozwiązywania różnych problemów, które dzisiaj nazywamy algorytmami. Najstarszy algorytm Spis treści Historia algorytmów Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  4. Definicja Historia Najstarszy algorytm Za najstarsze algorytmy uznawane są: algorytm Herona algorytm Euklidesa algorytm Hornera algorytm Huffmana Spis treści Najstarsze algorytmy Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  5. Definicja Historia algorytmy proste – rozgałęzione (nie występują albo występują rozgałęzienia), algorytmy cykliczne – mieszane (z powrotami albo bez powrotów), algorytmy równoległe – sekwencyjne sekwencyjne – algorytmy, w których instrukcje wykonywane są w porządku, w jakim zostały wprowadzone; niesekwencyjne(równoległe, współbieżne) – algorytmy, w których następstwo między pewnymi operacjami nie jest określone. algorytmy numeryczne - nienumeryczne (wykonywanie obliczeń lub przetwarzanie danych), algorytmy rekurencyjne – iteracyjne iteracyjne– rodzaj algorytmu i programu, w których wielokrotnie wykonuje się pewne instrukcje, dopóki nie zostanie spełniony określony warunek; rekurencyjne– takie procedury, które w swojej definicji posiadają wywołanie samej siebie; Najstarszy algorytm Spis treści Klasyfikacja algorytmów Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  6. Definicja Historia Najstarszy algorytm Spis treści Algorytm prosty a rozgałęziony Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  7. Definicja Historia Najstarszy algorytm Spis treści Algorytm cykliczny a mieszany Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  8. Definicja Historia Najstarszy algorytm Spis treści Algorytm równoległy a sekwencyjny Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  9. Definicja Historia Najstarszy algorytm Spis treści Algorytm iteracyjny a rekurencyjny Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  10. Definicja Rekurencja albo rekursja (ang. recursion, z łac. recurrere, przybiec z powrotem) to w logice, programowaniu i w matematyce odwoływanie się np. funkcji lub definicji do samej siebie. Wbrew próbom rozróżnienia terminówrekursja i rekurencja w rzeczywistości słowa te mają identyczne znaczenie Rekurencja polega na rozwiązywaniu problemu w oparciu o rozwiązania tego samego problemu dla danych o mniejszych rozmiarach. W informatyce rekurencja jest to sposób rozwiązania problemu z zastosowaniem algorytmu rekurencyjnego. Jego realizacją są obliczenia, w którym wydzielony podprogram wywołuje siebie samego. Rekurencja jest z powodzeniem stosowana w najefektywniejszych algorytmach sortowania. Historia Najstarszy algorytm Spis treści Rekurencja Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  11. Definicja Historia Rekurencyjny opis obliczeń jest na ogół bardziej zwarty niż opis tych samych obliczeń bez użycia rekurencji. Taki opis jest stosowany np. przy opisie fraktali, które są nawet definiowane jako twory podobne do swoich części. Zwartości opisu rekurencyjnego nie zawsze odpowiada jednak efektywność komputerowych realizacji algorytmów. Rekurencja składa się z podania wartości brzegowej (początkowej)i z równania wyrażającego ogólną wartość za pomocą wartości wcześniejszych wyrazów. Najstarszy algorytm Spis treści Rekurencja Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  12. Definicja W informatyce możemy realizować szczególny rodzaj powtórzeń bez konieczności stosowania pętli – technikę rekurencji. Z techniką tą spotykamy się w życiu codziennym, jej przykładem jest odbicie w lustrze: jeśli popatrzymy w lustro, a za sobą odpowiednio ustawimy drugie, to zauważymy, że odbija się w nim obraz z lustra, które mamy przed sobą. Kolejnym przykładem może być obraz, w którym wkomponowany jest ten sam obraz. W każdym z tych przykładów dany obraz jest częścią samego siebie. Przykładem rekurencji może być Wieża Hanoi, lub rekurencyjny algorytm Euklidesa, ciąg Fibonacciego. Historia Najstarszy algorytm Spis treści Rekurencja w naszym otoczeniu Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  13. Wieże z Hanoi to ciekawe zadanie z algorytmiki. Rozwiązanie jest często spotykanym modelem myślenia rekurencyjnego, dlatego warto je poznać. • Mamy n krążków o malejących średnicach. Każdy z nich posiada wydrążoną dziurkę i jest "nadziany" na pierwszy z trzech drążków jakie posiadamy. Pozostałe drążki są puste. • Zadanie polega na przeniesieniu wszystkich krążków z pierwszego drążka na drugi przy użyciu trzeciego. Trzeba to jednak zrobić przy dwóch założeniach: • wolno przenosić krążki tylko pojedynczo • ani przez moment krążek większy nie może leżeć na krążku mniejszym Zagadka Wież Hanoi stała się znana w XIX wieku dzięki matematykowi Édouardowi Lucasowi, który proponował zagadkę dla 8 krążków. • Do sprzedawanego zestawu była dołączona (prawdopodobnie wymyślona przez Lucasa) tybetańska legenda, według której mnisi w świątyni Brahmy rozwiązują tę łamigłówkę dla 64 złotych krążków. • Legenda mówi, że gdy mnisi zakończą zadanie, nastąpi koniec świata. Zakładając, że wykonują 1 ruch na sekundę, ułożenie wieży zajmie 264−1 = 18 446 744 073 709 551 615 (blisko 18 i pół tryliona) sekund, czyli około 584 542 miliardów lat. Dla porównania: Wszechświat ma około 13,7 mld lat. Definicja Historia Najstarszy algorytm Spis treści Wieża Hanoi Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  14. Definicja Oznaczmy podstawki przez A, B, C niech n oznacza liczbę krążków ponumerujmy krążki od najmniejszego u góry do największego u dołu W celu przeniesienia n krążków z A do B należy: przenieść n-1 krążków z A do C – wówczas n-ty dysk samotnie pozostaje w A przenieść n-ty (największy) krążek z A do B przenieść n-1 krążków z C do B Historia Najstarszy algorytm Spis treści Wieża Hanoi- algorytm rekurencyjny Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  15. Definicja Iteracja jest jednym z najważniejszych narzędzi zarówno praktycznego, jak i teoretycznego badania problemów liniowych i nieliniowych. Iteracja (z łacińskiego "iteratio", powtarzanie), czyli kolejne przybliżanie, oznacza powtarzanie pewnej wzorcowej czynności lub procesu. Iteracja w tym sensie występuje wtedy, gdy wielokrotnie stosuje się jakiś proces numeryczny - być może bardzo złożony i zawierający wiele przykładów użycia iteracji w węższym sensie - po to, aby stopniowo ulepszać wcześniejsze wyniki. Historia Najstarszy algorytm Spis treści Iteracja Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  16. Definicja W informatyce iteracja to czynność powtarzania (najczęściej wielokrotnego) tej samej instrukcji (albo wielu instrukcji) w pętli. Mianem iteracji określa się także operacje wykonywane wewnątrz takiej pętli. W odróżnieniu od rekurencji, która działa "od góry", iteracja do obliczenia n+1-szej wartości wykorzystuje poprzednią, n-tą iterację. Rekurencja dla obliczenia n-tej wartości potrzebuje zejścia aż do pierwszej wartości. Występowanie iteracji jest cechą charakterystyczną wielu algorytmów. Historia Najstarszy algorytm Spis treści Iteracja Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  17. Definicja Iteracje możemy podzielić na dwa rodzaje: • iteracje ograniczone – kiedy wiemy od razu ile razy pewne czynności będą powtarzane. Stosowane są jeżeli zbiór jest określony poprzez podanie jego liczebności. Iteracje te odbywają się według schematu: powtórz operacje A dokładnie n – razy • iteracje warunkowe (nieograniczone) – kiedy nie wiemy „z góry” ile razy pewne czynności będą powtarzane. Stosowane są jeżeli określenie końca zbioru odbywa się poprzez wartownika. Schemat według którego odbywają się iteracje wygląda następująco: • dopóki spełniony jest warunek Q wykonuj operacje A • powtarzaj operacje A, aż zostanie spełniony warunek Q Historia Najstarszy algorytm Spis treści Iteracja Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  18. Definicja Iteracje mają szerokie zastosowanie przy tworzeniu fraktali. Przykładem mogą być zbiory Julii. W zależności od "punktu startu" możemy w wyniku iteracji otrzymać ciąg, który będzie bądź nieograniczony (jego elementy opuszczą każdy okrąg ze środkiem w centrum układu współrzędnych) bądź też będzie ograniczony (czyli taki, dla którego istnieje okrąg - o środku w centrum układu współrzędnych - jakiego elementy ciągu nigdy nie opuszczą). Zbiory takich "punktów startu" w obu przypadkach nazywa się odpowiednio zbiorem uciekinierów lub zbiorem więźniów. Oba te zbiory są niepuste i dopełniające się na płaszczyźnie zespolonej, zatem istnieje tylko jedna - wspólna - ich granica. Przedstawiony przykład dotyczy zbioru rzędu drugiego (gdyż iterowany został wielomian stopnia drugiego). Historia Najstarszy algorytm Spis treści Iteracja Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  19. Definicja Iteracje wykorzystywane są także do projektowania parkietów czy posadzek. Problem ten, dla przypadku płytek w kształcie wielokątów foremnych, jest już znany od czasów starożytnych. Całą płaszczyznę dzieli się na stykające się w wierzchołkach wielokąty foremne, tak aby w każdym wierzchołku stykały się wszystkie przystające do wybranych wielokąty. Ponieważ wielokąt o n bokach posiada kąt o mierze (n - 2) * 1800/ n, a suma miar wszystkich połączonych w wierzchołku kątów wynosi 3600, stąd przykładowo dla trzech wielokątów (o ilości boków n1, n2, n3) mamy warunek a dla czterech wielokątów (o ilości boków n1, n2, n3 ,n4) Przykładowe projekty parkietów zostaną przedstawione na kolejnych slajdach. Można je zrealizować w edytorach grafiki (np. Power Point). Historia Najstarszy algorytm Spis treści Iteracja Klasyfikacja algorytmów Rekurencja Iteracja Zadania

  20. Definicja Historia Rozwiąż dołączony test. Swoją pracę wyślij w formie załącznika na bkolcz@wp.pl Dziękuję Barbara Kołcz Źródło: www.szkolnictwo.pl Najstarszy algorytm Spis treści Zadanie Klasyfikacja algorytmów Rekurencja Iteracja Zadania

More Related