Temat 3: Podstawy programowania Algorytmy – 2 z 2 _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Algorytmy możemy podzielić ze względu na: - metodę konstrukcji algorytmu - kolejność wykonywania działań -sposób wykonywania operacji -obszar zastosowań - strukturę danych _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Metody konstruowania algorytmów -Dziel i zwyciężaj – problem, który należy rozwiązać jest dzielony na kilka mniejszych, a te znowu na są dzielone aż do uzyskania problemów łatwych do rozwiązania. Algorytmy z tej grupy należą do najskuteczniejszych metod rozwiązywania problemów. _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Metody konstruowania algorytmów -Programowanie dynamiczne – podobne do poprzednika. Tutaj również problem jest dzielony na kilka mniejszych. Wyniki analizy cząstkowych problemów wykorzystuje się do rozwiązania głównego problemu. _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Metody konstruowania algorytmów -Metoda zachłanna – w tym przypadku nie jest prowadzona dokładna analiza problemu, tylko wybierane jest rozwiązanie, które w danym momencie wydaje się najkorzystniejsze. _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Metody konstruowania algorytmów -Poszukiwanie i wyliczanie – przeszukiwany jest zbiór zadań aż do znalezienia rozwiązania. _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Metody konstruowania algorytmów -Heurystyka – na podstawie niepełnych danych tworzony jest algorytm, który działa w sposób najbardziej prawdopodobny. Metody heurystyczne nie zapewniają otrzymywania poprawnego rozwiązania; powstałe w ten sposób algorytmy dają zawsze rozwiązania jedynie przybliżone. _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Kolejność wykonywania działań -Liniowy – poszczególny kroki w tym algorytmie są wykonywane w tej samej kolejności w jakiej zostały zapisane (zakolejkowane). Krok nie może być powtórzony ani pominięty. _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Kolejność wykonywania działań -Warunkowy (z rozgałęzieniem) – wykonywanie poleceń w tym przypadku zależy od spełnienia lub też nie określonego warunku. _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Kolejność wykonywania działań -Z pętlą (cykliczny) – grupa poleceń jest powtarzana wielokrotnie. Liczba powtórzeń może być z góry określona lub grupa poleceń jest powtarzana aż do spełnienia określonego warunku _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Sposób wykonywania operacji -Sekwencyjne – operacje wykonywane są w tej kolejności w jakiej zostały opisane _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Sposób wykonywania operacji -Iteracyjne – niektóre kroki są powtarzane aż do spełnienia wymaganego warunku _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Sposób wykonywania operacji -Rekurencyjne – tworzona jest formuła powtarzająca dane i odwołująca się do niej samej. Zakończenie wywoływania formuły następuje po spełnieniu warunku zakończenia rekurencji. _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]
Klasyfikacja algorytmów Obszar zastosowań -Matematyczne -Przeszukujące -Porządkujące -Rekurencyjne -Szyfrujące _________________________________________________________________________________________________________________ [ Przedmiot: Aplikacje Internetowe | Opracowanie: Marek Kwiatkowski | 2015 ]