Jump to content

Wp/isv/Algoritm

From Wikimedia Incubator
< Wp | isv
Wp > isv > Algoritm
Tuty članok trěbuje prověrky pravopisa, gramatiky, stilja ili tona.

Možete pomogti Medžuvikiju, popravivši jego.

V informatikě toj detaljeny plan rěšenja danego problemu, prědstavjeny s pomoču ograničonogo čisla krokov, kde kryterium uspěhu (često vzajemno protivne) sut čas, košt i lihva.

Zapytanjami svězanymi s optimalizaciju algoritmov zajmuje se Teorija Systemov.

Typične kroki v razvoju algoritmov:

  1. Definicija problemu
  2. Razvoj modelu
  3. Specifikacija algoritmu
  4. Dizajn algoritmu
  5. Prěgladanje popravnosti algoritmu
  6. Analiza algoritmu
  7. Implementacija algoritmu
  8. Testovanje programu
  9. Prigotovanje dokumentaciji

Algoritmy v informatikě

[edit | edit source]

Rekurencija a iteracija

[edit | edit source]

Rekurencija znači to, čto algoritm zna někakoj bazovoj osnovu svojego rabotanja, a ine vyše složene slučaje sut rěšene prěz privestěnje samogo sěbě. Javi se vyše prosta vo implementaciji, ale problem nastaje kogdy kolikost *vyvolanj* je vyša než dozvaljaje stog programovy.

Iteracija znači to, čto někaka akcija je dělana každogo hodu, np. dodavanje čisla 1 do čisla, ktore ty uže imaš. Prěd joj implementaciju ty potrěbuješ znati točnoj kolikost razov koliko iteracij bude sdělanyh.

Priměry v Python

[edit | edit source]

Algoritm Euklidesa algorytm vyznačaje najboljši spolny děljnik dvoh čisl. Stvorjeny prěž grěčskogo matematika Euklidesa i objasnjony vo dělu "Elementy".

def gcd(a, b): while b: a, b = b, a % b return a

Složenost čisljenjova

[edit | edit source]

Každy algoritm ima někaki čas, ktorogo potrěbuje da by rabotati i zakončiti svoje rabotanje v někakom ograničonom času.

Zavisno od togo, kako informacije sut upravjane. Složenost algoritmov naznača se velikoj bukvu O(n). Objasnjenje priměrami:

O(1) - ty jesi bibliotekar. Každomu čitatělj, ktori prihodi, otrimuje od tebě knigu. Konec historiji.

O(n) - imaš sbirku knig, ktorih je n. Ne znaš, kde je ta jedina, ktoroj hčeš. Iščeš každoj iz njih.

O(log n) - imaš veliky sbornik knig. Vse knigi s titelami, ktore počinajut se od bukvy A do poloviny alfabeta sut so tvoju lěvoj strony, ostatok od poloviny alfabeta do konca je po tvoju lěvoj stroně. Ne trěbuješ gledati vsih knig, čto by najdtji toj jedinoj - gledaš toliko po někakoj větkě.

Žrla

[edit | edit source]