From: Martin Mares Date: Sun, 31 Jul 2011 16:28:14 +0000 (+0200) Subject: Trideni: Korektury od Dominika Mokrise X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=9576270ec08d72c3b8b22fbc418783def1fe5bdd;p=ads1.git Trideni: Korektury od Dominika Mokrise --- diff --git a/13-trideni/13-trideni.tex b/13-trideni/13-trideni.tex index 7481390..e2e6bb5 100644 --- a/13-trideni/13-trideni.tex +++ b/13-trideni/13-trideni.tex @@ -52,7 +52,7 @@ ve \>Poznámky k tabulce: \itemize\ibull -\:QuickSort má jen prùmìrnou èasovou slo¾itost $\Theta (\log n)$. Mù¾eme ale øíct, ¾e +\:QuickSort má jen prùmìrnou èasovou slo¾itost $\Theta (n\log n)$. Mù¾eme ale øíct, ¾e porovnáváme prùmìrné èasové slo¾itosti, proto¾e u ostatních algoritmù vyjdou stejnì jako jejich èasové slo¾itosti v~nejhor¹ím pøípadì. \:HeapSort -- tøídìní pomocí haldy. Do haldy vlo¾íme v¹echny prvky a pak je vybereme. @@ -66,7 +66,7 @@ s~rozd \endlist \>®ádný algoritmus v tabulce netøídil rychleji ne¾ $\Theta(n\log n)$. To není náhoda --- nasledující vìta nám øíká, ¾e to nejde: +-- následující vìta nám øíká, ¾e to nejde: \smallskip @@ -74,7 +74,7 @@ s~rozd Ka¾dý deterministický tøídící algoritmus, který tøídìné prvky pouze porovnává a kopíruje, má èasovou slo¾itost $\Omega(n\log n)$. -(O prùmìrné èasové slo¾itosti pravdìpodobnostních tøidících algoritmù se dá dokázat podobná vìta.) +(O prùmìrné èasové slo¾itosti pravdìpodobnostních tøídících algoritmù se dá dokázat podobná vìta.) \proof Doká¾eme, ¾e ka¾dý porovnávací tøídící algoritmus potøebuje v~nejhor¹ím @@ -216,7 +216,7 @@ Po $\ell$-t Indukcí podle $\ell$: \itemize\ibull \:Pro $ \ell = 1 $ jsou prvky uspoøádány podle poslední souøadnice. -\:Po $\ell$ prùchodech ji¾ máme prvky setøídìny lexikograficky podle $i$-té a¾ $k$-té souøadnice a spou¹tíme $(\ell + 1)$-ní prùchod, tj. budeme tøídít podle $(i - 1)$-ní souøadnice. +\:Po $\ell$ prùchodech ji¾ máme prvky setøídìny lexikograficky podle $i$-té a¾ $k$-té souøadnice a spou¹tíme $(\ell + 1)$-ní prùchod, tj. budeme tøídit podle $(i - 1)$-ní souøadnice. Proto¾e bucket-sort tøídí stabilnì, zùstanou prvky se stejnou $(i - 1)$-ní souøadnicí vùèi sobì seøazeny tak, jak byly seøazeny na vstupu. Z IP tam v¹ak byly seøazeny lexikograficky podle $i$-té a¾ $k$-té souøadnice. Tudí¾ po $(\ell + 1)$-ním prùchodu jsou prvky seøazeny podle $(i - 1)$-ní a¾ $k$-té souøadnice. \endlist @@ -226,7 +226,7 @@ Z IP tam v \h{Tøídìní èísel $ 1 \ldots R $ podruhé (Radix sort)} Zvolíme základ $Z$ a èísla zapí¹eme v soustavì o základu $Z$, èím¾ získáme $ ( \lfloor \log_z{R} \rfloor +1) $-tice, na které spustíme pøedcházející algoritmus. -Díky tomu budeme tøídít v èase $\Theta({\log{R} \over \log{Z}} \cdot (n + Z))$. Jak zvolit vhodné $Z$? +Díky tomu budeme tøídit v èase $\Theta({\log{R} \over \log{Z}} \cdot (n + Z))$. Jak zvolit vhodné $Z$? Pokud bychom zvolili $Z$ konstantní, èasová slo¾itost bude $\Theta(\log{R} \cdot n) $, co¾ mù¾e být $ n \log{n} $ nebo i víc. Zvolíme-li $ Z = n $, dostáváme $ \Theta({\log{R} \over \log{n}} \cdot n) $, co¾ pro $ R \leq n^\alpha $ znamená $ \O(\alpha n) $. @@ -241,7 +241,7 @@ l_n $ Ozna poèet znakù abecedy. Problém je, ¾e øetìzce nemusí být stejnì dlouhé (pokud by byly, lze se na øetìzce -dívat jako na $k$-tice, které u¾ tøídít umíme). S tím se mù¾eme pokusit vypoøádat +dívat jako na $k$-tice, které u¾ tøídit umíme). S tím se mù¾eme pokusit vypoøádat doplnìním øetìzcù mezerami tak, aby mìly v¹echny stejnou délku, a spustit na nìj algoritmus pro $k$-tice. Tím dostaneme algoritmus, který bude mít èasovou slo¾itost $ \O(Ln) $, co¾ bohu¾el mù¾e být a¾ kvadratické vzhledem k velikosti vstupu. @@ -330,7 +330,7 @@ Algoritmus: (t mno¾inì, konkrétnì v èase $ \O(\log n) $ napø. pomocí pùlení intervalù. Dal¹ím problémem, na který se hodí pou¾ít tøídìní, je zji¹tìní, zda se v posloupnosti nìjaké její hodnoty opakují. Dá se dokázat, ¾e tuto úlohu nelze vyøe¹it lépe (rychleji), ne¾ -tak, ¾e hodnoty nejprve setøídíme a poté setøidìnou posloupnost projdeme. +tak, ¾e hodnoty nejprve setøídíme a poté setøídìnou posloupnost projdeme. \h{Násobení matic n$\times$n a Strassenùv algoritmus}