Edytujesz „Algorytm”
Z Nonsensopedii, polskiej encyklopedii humoru
Uwaga: Nie jesteś zalogowany. Jeśli wykonasz jakąkolwiek zmianę, Twój adres IP będzie widoczny publicznie. Jeśli zalogujesz się lub utworzysz konto, Twoje zmiany zostaną przypisane do konta, wraz z innymi korzyściami.
Ta edycja może zostać anulowana. Porównaj ukazane poniżej różnice między wersjami, a następnie zapisz zmiany.
Aktualna wersja | Twój tekst | ||
Linia 1: | Linia 1: | ||
[[Plik:Czytelny algorytm.png|thumb|250px|Przykład czytelnie opisanego algorytmu w formie pseudokodu]] |
|||
'''Algorytm''' – [[Nieskończoność|(nie)skończony]] ciąg niejasno zdefiniowanych czynności, które w pokrętny i zawiły sposób prowadzą do kompletnej frustracji [[Programista|programisty]], użytkownika i procesora. Według niepotwierdzonych [[Teoria|teorii]] algorytmy mają służyć rozwiązywaniu [[problem]]ów. |
'''Algorytm''' – [[Nieskończoność|(nie)skończony]] ciąg niejasno zdefiniowanych czynności, które w pokrętny i zawiły sposób prowadzą do kompletnej frustracji [[Programista|programisty]], użytkownika i procesora. Według niepotwierdzonych [[Teoria|teorii]] algorytmy mają służyć rozwiązywaniu [[problem]]ów. |
||
Linia 13: | Linia 12: | ||
* '''Praca równoległa''' – ta metoda polega na wzmaganiu ducha [[sport]]u i rywalizacji w komputerach. Dajemy to samo zadanie kilku komputerom i każemy im je rozwiązać na czas. Komputer który wygra w nagrodę dostaje nowy [[dysk twardy]]/[[RAM]]/[[procesor]]<ref>Najłatwiej zabrać te części z jakiegoś przegranego komputera</ref>. |
* '''Praca równoległa''' – ta metoda polega na wzmaganiu ducha [[sport]]u i rywalizacji w komputerach. Dajemy to samo zadanie kilku komputerom i każemy im je rozwiązać na czas. Komputer który wygra w nagrodę dostaje nowy [[dysk twardy]]/[[RAM]]/[[procesor]]<ref>Najłatwiej zabrać te części z jakiegoś przegranego komputera</ref>. |
||
* '''Sztuczna inteligencja''' – czyli zrzucanie całej roboty na komputer. {{Główny artykuł|[[Sztuczna inteligencja]]}} |
* '''Sztuczna inteligencja''' – czyli zrzucanie całej roboty na komputer. {{Główny artykuł|[[Sztuczna inteligencja]]}} |
||
* '''Algorytmy genetyczne''' – |
|||
* '''Algorytmy ewolucyjne''' – tworzymy kilka byle jakich algorytmów, zostawiamy je w [[Ciepło|ciepełku]] i czekamy aż zaczną się rozmnażać. Po kilku [[Pokolenie|pokoleniach]] powinny się pojawić jakieś sensowne programy. Jedyną wadą tej metody jest możliwość narażenia się lokalnemu [[Ksiądz|guślarzowi]] za stosowanie niezgodnych z [[Biblia|Biblią]] praktyk ewolucyjnych. |
|||
* '''Algorytmy kwantowe''' – |
|||
* '''Algorytmy kwantowe''' – (bardzo) teoretyczne metody oparte na splątywaniu ze sobą [[kwant]]ów i [[Skwarki|skwarków]]. Dokładnie nie wiadomo jak to niby ma działać, ale według niekoniecznie trzeźwych [[fizyk]]ów algorytmy kwantowe ''zrewolucjonizują kryptografię''. |
|||
== Przykłady algorytmów == |
== Przykłady algorytmów == |
||
* '''Sortowanie bąbelkowe''' – bardzo intuicyjny algorytm, aby go należycie wykonać należy wrzucić wszystkie [[Liczba|liczby]] do garnka z wodą (koniecznie posolić!) i wstawić na gaz. Podczas gotowania na powierzchni wody zaczną się pojawiać bąbelki z liczbami w środku. Należy wtedy wyjmować liczby z [[Garnek|garnka]] w kolejności, w jakiej wypływały na wierzch. |
* '''Sortowanie bąbelkowe''' – bardzo intuicyjny algorytm, aby go należycie wykonać należy wrzucić wszystkie [[Liczba|liczby]] do garnka z wodą (koniecznie posolić!) i wstawić na gaz. Podczas gotowania na powierzchni wody zaczną się pojawiać bąbelki z liczbami w środku. Należy wtedy wyjmować liczby z [[Garnek|garnka]] w kolejności, w jakiej wypływały na wierzch. |
||
* '''Sortowanie szybkie''' – |
|||
* '''Sortowanie szybkie''' – w gruncie rzeczy działa tak samo jak poprzedni algorytm, tyle że trzeba to robić szybciej. Można sporo czasu zaoszczędzić poprzez zatrudnienie kilku [[murzyn]]ów do wyciągania <del>pierogów</del> liczb i dokupienie większej ilości garnków. |
|||
* '''Algorytm Dijkstry''' – |
|||
* '''Algorytm Dijkstry''' – metoda opracowana przez wk{{cenzura1}}ego korkami [[Holandia|Holendra]] Edsgera Dijkstrę. Pozwala znaleźć najdłuższą i najbardziej pokrętną drogę z punktu '''A''' do punktu '''B''' przez punkty '''H''', '''W''', '''D''' i oczywiście '''P'''. |
|||
* '''Algorytm Euklidesa''' – |
|||
* '''Stacja rozrządowa Dijkstry''' – bardzo [[Polska|polski]] algorytm, mimo że jest autorstwa Holendra. Pozwala zamienić normalne działanie matematyczne – na przykład <math>x\frac{a}{b-c}</math> na jakże czytelną ''[[Odwrotna notacja polska|odwrotną notację polską]]'' czyli <math>a b c - / x *</math>. |
|||
* '''Stacja rozrządowa Dijkstry''' – |
|||
* '''Eliminacja Gaussa''' – właściwie to jest zabawa polegająca na znalezieniu i zabiciu Gaussa ukrytego w układzie równań liniowych. Ulubiona rozrywka znudzonych [[student]]ów matematyki. |
|||
* '''Eliminacja Gaussa''' – |
|||
== Złożoność obliczeniowa == |
== Złożoność obliczeniowa == |
||
Linia 34: | Linia 34: | ||
* <math>O(n^3)</math> – toż to zwykły, ch{{cenzura3}}wy brute-force! |
* <math>O(n^3)</math> – toż to zwykły, ch{{cenzura3}}wy brute-force! |
||
* <math>O(n!)</math> – chyba przesadziłeś z tą rekurencją; |
* <math>O(n!)</math> – chyba przesadziłeś z tą rekurencją; |
||
* <math>O(n^n)</math> – tak zwane <math>O(kurwa |
* <math>O(n^n)</math> – tak zwane <math>O(kurwa)</math>! |
||
* <math>O\left(n^{n^n}\right)</math> – zaraz, ty chyba nie… |
* <math>O\left(n^{n^n}\right)</math> – zaraz, ty chyba nie… |
||
* <math>O\left(n^{n^{n^{n^{n^{n^nn}n}n}n}n}_{n_{n_{n_{n_{n_nn}n}n}n}n}n\right)</math> – co… Co to w ogóle, k{{cenzura1}}a, ma być?! |
* <math>O\left(n^{n^{n^{n^{n^{n^nn}n}n}n}n}_{n_{n_{n_{n_{n_nn}n}n}n}n}n\right)</math> – co… Co to w ogóle, k{{cenzura1}}a, ma być?! |
||
{{Przypisy}} |
|||
== Zobacz też == |
|||
* [[programowanie na kartce]] |
|||
{{ |
{{Informatyka}} |
||
{{stopka}} |
|||
[[Kategoria:Programowanie]] |
|||
[[en:Algorithm]] |