sobota, 20 września 2014

Wprowadzenie do algorytmów...

Algorytm jest przepisem opisującym krok po kroku rozwiązanie problemu lub osiągnięcie celu.

Przykład:

Algorytm gotowania kalafiora:

Krok 1. Włóż różyczki kalafiora do osolonej się gotującej wody
Krok 2. Zanotuj czas początkowy t0
Krok 3. Odczytaj czas aktualny t
Krok 4.  Oblicz D t = t - t0
Krok 5. Jeśli D t< 15 min, to przejdź do kroku 3
Krok 6. Kalafior odcedzamy. 

Tak jak widać algorytm gotowania kalafiora jest przepisem opisującym krok po kroku osiągnięcie celu jakim jest ugotowanie kalafiora.
Od zawsze człowiek starał sobie ułatwiać życie oraz ulepszać własne  metody realizacji swoich zamierzonych celów. Za przykład mogę przytoczyć między innymi : pakowanie plecaka, wychodzenie z labiryntu, wysyłanie wiadomości.

Niektóre algorytmy mają już 2000 lat więc zostały wymyślone na długo przed pojawieniem się pierwszych komputerów. Właśnie jednym z najstarszych algorytmów jest Algorytm Euklidesa czyli algorytm wyznaczania największego wspólnego dzielnika dwóch liczb. Został on opisany przez greckiego matematyka Euklidesa w jego dziele "Elementy".

Pierwsze wzmianki na temat tego algorytmu pojawiły się w dziele Euklidesa zatytułowanym "Elementy", około trzechsetnego roku przed naszą erą, sprawia to, że jest jednym z najstarszych,wciąż używanych algorytmów numerycznych.

Żeby przybliżyć bliżej tematykę algorytmów należy sięgnąć po pozycję książkową, która powinna solidnie ale zarazem krok po kroku wprowadzać czytelnika po kolejnych działach książki.
Tak więc istnieje książka, która zyskała miano BIBLII ALGORYTMÓW, w książce zostały omówione metody matematyczne stosowane do analizy algorytmów, sortowanie i statystyki pozycyjne, struktury danych, podstawowe metody projektowania efektywnych algorytmów.
Również dużo miejsca poświęcono  złożonym strukturom danych i podstawowym algorytmom grafowym. Poszczególne części książki stanowią materiał dydaktyczny wielu przedmiotów ( informatycznych) , które są wykładane na uczelniach wyższych.
Książka również zawiera zbiór zadań i problemów do rozwiązania, zadania są zróżnicowane co powinno być bardzo interesujące dla czytelnika.
Czytelnikiem w zasadzie może być każdy, kto chcę zajmować się  projektowaniem i programowaniem systemów informatycznych.


"Wprowadzenie do algorytmów" -  autorzy Thomas H. Cormen , Charles E. Leiserson , Ronald L. Rivest, Clifford Stein.

 
 Książkę można znaleźć tutaj: LINK


1 komentarz:

  1. Ten algorytm jest nieefektywny, ponieważ zajmuje cały czas działania gotującego. Lepiej byłoby ustawić czasomierz i co minute przypominać mu o sprawdzaniu. Dzięki temu mógłby np pójść do toalety. W ten sposób wprowadzamy wielowątkowość do kuchni, toalety no i algorytmów

    OdpowiedzUsuń