ALG4

ALG4



54 Rozdział 3. Analiza sprawności algorytmów

Tematyką tego rozdziału jest tzw. złożoność obliczeniowa algorytmów, czyli próba odpowiedzi na pytanie: który z dwóch programów wykonujących to samo zadanie (ale odmiennymi metodami) jest efektywniejszy? Wbrew pozorom w wielu przypadkach odpowiedź wcale nie jest taka prosta i wymaga użycia dość złożonego aparatu matematycznego. Nie będzie jednak wymagane od Czytelnika posiadanie jakichś szczególnych kwalifikacji matematycznych - prezentowane metody będą w dużym stopniu uproszczone i nastawione raczej na zastosowania praktyczne niż teoretyczne studia.

Istotna uwaga należy się osobom, które byłyby głębiej zainteresowane stroną matematyczną prezentowanych zagadnień, dowodami użytych metod etc. Głównym kryterium doboru zaprezentowanych narzędzi matematycznych była ich prostota. Nie każdy programista jest matematykiem i zamienianie tej książki w podręcznik analizy matematycznej nie było bynajmniej celem autora.

Tych Czytelników, którym brakuje nieco formalizmu matematycznego, można odesłać do dokładniejszej lektury np. [BB87], [Gri84 |, [ Kro89] czy też klasycznych tytułów: [K.nu73], [Knu69], [Knu75],

Pomocne będą także zwykłe podręczniki matematyczne, ale należy zdawać sobie sprawę z tego, iż częstokroć zawierają one nadmiar informacji i wyłuskanie tego, co jest nam naprawdę niezbędne, jest znacznie trudniejsze niż w przypadku tytułów z założenia przeznaczonych dla programistów.

3.1. Dobre samopoczucie użytkownika programu

Zanurzając się w problematykę analizy sprawnościowej programów, możemy wyróżnić min. dwa ważne czynniki wpływające na dobre samopoczucie użytkownika programu:

•    czas wykonania (znowu się „zawiesił ”, czy leż coś liczy?!)',

   zajętość pamięci (mam już dość komunikatów typu: Insufficient metnory - save your work').

Z uwagi na znaczne potanienie pamięci RAM w ostatnich latach to drugie kryterium straciło już praktycznie na znaczeniu" Co innego jest z pierwszym!

' Ang. Brak pamięci - zachowaj swoje dane: dość częsty komunikat w pewnym przereklamowanym edytorze tekstów dla systemu MS-Windows.

' Stwierdzenie to jest fałszywe w odniesieniu do niektórych dziedzin techniki; niektóre algorytmy używane w syntezie obrazu pochłaniają tyle pamięci, że w praktyce są ciągle nieuzywalne w komputerach osobistych. Ponadto należy sobie zdać sprawę, że obsługa skomplikowanych struktur danych jest na ogól dość czasochłonna - jedno kryterium oddziałuje zatem na drugie!


Wyszukiwarka

Podobne podstrony:
ALG2 12 PrzedmowaRozdział 3 Analiza sprawności algorytmów Przegląd najpopularniejszych i najprostsz
ALG4 64 Rozdział 3. Analiza sprawności algorytmów3.4. Przykład 3: Wpadamy w pułapkę Zadania z dwóch
ALG4 74 Rozdział 3. Analiza sprawności algorytmów • funkcja d(n) musi spełniać następującą własność
ALG6 56 Rozdział 3. Analiza sprawności algorytmów jest intuicyjnie bardzo proste, dalej będziemy uż
Alg0 60 Rozdział 3. Analiza sprawności algorytmów •    Znak graficzny 3 należy czyta
ALG2 52 Rozdział 3. Analiza sprawności algorytmów Rys. 3 -
ALG6 66 Rozdział 3. Analiza sprawności algorytmów return pos; else    //element zost
ALG8 68 Rozdział 3. Analiza sprawności algorytmów3.6. Nowe zadanie: uprościć obliczenia! Nic sposób
ALG0 70 Rozdział 3. Analiza sprawności algorytmów Przykład: SRL=xn-3x„.i+2 x„ -2=0 daje
ALG2 72 Rozdział 3. Analiza sprawności algorytmówn o) = i, i = A + O, A =    1. Po t
ALG6 76 Rozdział 3. Analiza sprawności algorytmów Analogicznie dla 2 otrzymamy: Vn > 1, A(n,2) =
ALG8 78___Rozdział 3 Analiza sprawności algorytmówZad. 3-4 Proszę rozwiązać następujące równanie
ALG8 58Rozdział 3. Analiza sprawności algorytmów konania programu zależy od danej wejściowej n? W l
ALG4 194 Rozdział 7. Algorytmy przeszukiwania •    powinna być tatwo obliczalna, tak
12 PrzedmowaRozdział 3 Analiza sprawności algorytmów Przegląd najpopularniejszych i najprostszych
ET4 54 Rozdział 4. Turystyka jako sektor gospodarki Przyjmuje się, że model mnożnikowych elektów ek
ALG4 24 Rozdział 1. Zanim wystartujemy Aby zaradzić zaanonsowanym wyżej problemom, przyjęło się zwy
Alg4 44 Rozdział2. Rekurencja ( if (lg>0) ( lineto(x+lg,y); lineto(x+lg,y+lg); lineto

więcej podobnych podstron