]> mj.ucw.cz Git - ads1.git/commitdiff
Trideni: Korektury od Dominika Mokrise
authorMartin Mares <mj@ucw.cz>
Sun, 31 Jul 2011 16:28:14 +0000 (18:28 +0200)
committerMartin Mares <mj@ucw.cz>
Sun, 31 Jul 2011 16:28:14 +0000 (18:28 +0200)
13-trideni/13-trideni.tex

index 74813909981755fa0bb4e11632eef4734521d2f5..e2e6bb5f81ddb03a4e2e82001cba614d3db014a8 100644 (file)
@@ -52,7 +52,7 @@ ve
 
 \>Poznámky k tabulce:
 \itemize\ibull
 
 \>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.
 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
 \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
 
 
 \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)$.
 
 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
 
 \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.
 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
 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.
 
 \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) $.
 
 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
 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.
 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¾
 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}
 
 
 \h{Násobení matic n$\times$n a Strassenùv algoritmus}