]> mj.ucw.cz Git - ga.git/commitdiff
Opravy drobnych chyb.
authorMartin Mares <mj@ucw.cz>
Fri, 12 Jan 2007 20:43:42 +0000 (21:43 +0100)
committerMartin Mares <mj@ucw.cz>
Fri, 12 Jan 2007 20:43:42 +0000 (21:43 +0100)
10-decomp/10-decomp.tex
2-dinic/2-dinic.tex
3-bipcon/3-bipcon.tex
4-ght/4-ght.tex
5-mst/5-mst.tex
6-borjar/6-borjar.tex
7-ram/7-ram.tex

index 480112f3d7f5c09a045eb4ab8a4402efeaea0951..7d63783eb158a84557d9f6c38c9737751d7f63ce 100644 (file)
@@ -161,7 +161,7 @@ zda je p
 \s{Analýza:} Operace s~mikrostromy, spojovacími hranami a cestami jsou, jak u¾ víme,
 amortizovanì konstantní. Operace s~makrostromy také, jeliko¾ trvají $\O(\log n)$,
 ale provede se jich pouze $\O(n/\log n)$. Ka¾dou operaci \<Union> nebo \<Find>
 \s{Analýza:} Operace s~mikrostromy, spojovacími hranami a cestami jsou, jak u¾ víme,
 amortizovanì konstantní. Operace s~makrostromy také, jeliko¾ trvají $\O(\log n)$,
 ale provede se jich pouze $\O(n/\log n)$. Ka¾dou operaci \<Union> nebo \<Find>
-rozlo¾íme $\O(1)$ tìchto dílèích operací, tak¾e bude také trvat $\O(1)$ amortizovanì.
+rozlo¾íme na~$\O(1)$ tìchto dílèích operací, tak¾e bude také trvat $\O(1)$ amortizovanì.
 
 \h{Fredericksonova clusterizace}
 
 
 \h{Fredericksonova clusterizace}
 
index 5e339c32579b8dd546e6af82aaf64b45b05a270f..5e24a112c7a08be5cb74ca6044f3b4a293896abb 100644 (file)
@@ -21,7 +21,7 @@ kdyby neuva
 \::Sestroj sí» rezerv.
 \::Najdi nejkrat¹í $st$-cestu. Kdy¾ ¾ádná neexistuje, skonèi.
 \::Proèisti sí», tj. nech v ní pouze vrcholy a hrany na nejkrat¹ích $st$-cestách.
 \::Sestroj sí» rezerv.
 \::Najdi nejkrat¹í $st$-cestu. Kdy¾ ¾ádná neexistuje, skonèi.
 \::Proèisti sí», tj. nech v ní pouze vrcholy a hrany na nejkrat¹ích $st$-cestách.
-\::Najdi blokující tok $f_B$:
+\::Najdi v~proèi¹tìné síti blokující tok $f_B$:
 \:::$f_B \leftarrow \<prázdný tok>$
 \:::Postupnì pøidáváme $st$-cesty: {\I (vnitøní cyklus)}
 \::::Najdi $st$-cestu. Napø. hladovì metodou rovnou za nosem.
 \:::$f_B \leftarrow \<prázdný tok>$
 \:::Postupnì pøidáváme $st$-cesty: {\I (vnitøní cyklus)}
 \::::Najdi $st$-cestu. Napø. hladovì metodou rovnou za nosem.
index dcca2dd3eb61ed6ffdae889589d22f7b58af69d5..81c3f0088983a3c55442cf49a8e6b4b7c60334ed 100644 (file)
@@ -111,7 +111,12 @@ $$\eqalign{
 }$$
 \qed
 
 }$$
 \qed
 
-Dokázali jsme, ¾e libovolný øez separující $v_{n-1}$ a $v_n$ je vìt¹í ne¾ jednoduchý øez skládající se jen z hran kolem~$v_n$. Kdy¾ tedy sestavíme nìjakou LU posloupnost vrcholù, budeme mít k dispozici jednoduchý minimální øez $v_{n-1}$ a~$v_n$. Následnì vytvoøíme graf $G'$, v nìm¾ $v_{n-1}$ a $v_n$ skontrahujeme. Rekurzivnì najdeme minimální øez v $G'$. Hledaný minimální øez poté buïto oddìluje vrcholy $v_n$ a $v_{n-1}$ a potom je øez kolem vrcholu $v_n$ minimální, nebo vrcholy $v_n$ a $v_{n-1}$ neoddìluje, a v takovém pøípadì jej najdeme rekurzivnì. Hledaný øez je tedy men¹í z rekurzivnì nalezeného øezu a øezu kolem $v_n$.
+Dokázali jsme, ¾e libovolný øez separující $v_{n-1}$ a $v_n$ je vìt¹í ne¾ jednoduchý øez skládající se jen z hran
+kolem~$v_n$. Kdy¾ tedy sestavíme nìjakou LU posloupnost vrcholù, budeme mít k dispozici jednoduchý minimální øez
+$v_{n-1}$ a~$v_n$. Následnì vytvoøíme graf $G'$, v nìm¾ $v_{n-1}$ a $v_n$ skontrahujeme. Rekurzivnì najdeme minimální
+øez v $G'$ (sestrojíme nové LU atd.). Hledaný minimální øez poté buïto oddìluje vrcholy $v_n$ a $v_{n-1}$ a potom je øez
+kolem vrcholu $v_n$ minimální, nebo vrcholy $v_n$ a $v_{n-1}$ neoddìluje, a v takovém pøípadì jej najdeme
+rekurzivnì. Hledaný øez je tedy men¹í z rekurzivnì nalezeného øezu a øezu kolem $v_n$.
 
 Zbývá ukázat, jak konstruovat LU. Postaèí hladovì: Pamatujeme si $\forall v\neq v_1 \ldots v_{i-1}$ hodnotu $d(\{v_1 \ldots v_{i-1},v)$, oznaème ji $z_v$. V ka¾dém kroku vybereme vrchol $v$ s maximální hodnotou $z_v$ a prohlásíme ho za $v_i$ a pøepoèítáme~$z_v$.
 
 
 Zbývá ukázat, jak konstruovat LU. Postaèí hladovì: Pamatujeme si $\forall v\neq v_1 \ldots v_{i-1}$ hodnotu $d(\{v_1 \ldots v_{i-1},v)$, oznaème ji $z_v$. V ka¾dém kroku vybereme vrchol $v$ s maximální hodnotou $z_v$ a prohlásíme ho za $v_i$ a pøepoèítáme~$z_v$.
 
index 5daf909fa8d40de8af45c5b5961f1d1938d37372..bd5b8cf4a60b301f0443a7856f7572c42b2cdc09 100644 (file)
@@ -103,7 +103,7 @@ Nyn
 \:$t\not\in X$.\par
 Doká¾eme dvì nerovnosti. Nerovnost $$\eqalignno{c(U \cup X) &\ge c(U)&(1)}$$
 platí proto, ¾e $U \cup X$ je nìjaký \st-øez, zatímco $U$ je minimální \st-øez. Dal¹í
 \:$t\not\in X$.\par
 Doká¾eme dvì nerovnosti. Nerovnost $$\eqalignno{c(U \cup X) &\ge c(U)&(1)}$$
 platí proto, ¾e $U \cup X$ je nìjaký \st-øez, zatímco $U$ je minimální \st-øez. Dal¹í
-$$\eqalignno{\d(U \cap X) + c(U \cup X) &\le c(U) + c(X)&(2)}$$
+$$\eqalignno{c(U \cap X) + c(U \cup X) &\le c(U) + c(X)&(2)}$$
 doká¾eme \uv{rozborem pøípadù}.
 
 }
 doká¾eme \uv{rozborem pøípadù}.
 
 }
index 387b662d68bb249bcfc1bea881e37d88cf7702d8..e0f9364771c2fd0f078b2fa3062bbb37b2a1f524 100644 (file)
@@ -70,7 +70,7 @@ pak lze od~$T$ k~$T'$ p
 
 \s{Dùkaz:}
 Podobnì jako u~pøedchozího lemmatu budeme postupovat indukcí podle $\vert T \symdiff T' \vert$.
 
 \s{Dùkaz:}
 Podobnì jako u~pøedchozího lemmatu budeme postupovat indukcí podle $\vert T \symdiff T' \vert$.
-Pokud zvolíme libovolnì hranu $e'\in T'\setminus T$ a k~ní $e\in T[e]\setminus T'$, musí
+Pokud zvolíme libovolnì hranu $e'\in T'\setminus T$ a k~ní $e\in T[e']\setminus T'$, musí
 $\check{T}:=\<swap>(T,e,e')$ být kostra bli¾¹í k~$T'$ a $w(\check{T})\ge w(T)$,
 jeliko¾ $e'$ nemù¾e být lehká vzhledem k~$T$, tak¾e speciálnì $w(e')\ge w(e)$.
 
 $\check{T}:=\<swap>(T,e,e')$ být kostra bli¾¹í k~$T'$ a $w(\check{T})\ge w(T)$,
 jeliko¾ $e'$ nemù¾e být lehká vzhledem k~$T$, tak¾e speciálnì $w(e')\ge w(e)$.
 
index 3d742608bc49c353d96bf417ca43314c890a174b..e8d0adc96a0f7901daaa830763e54404a58fc476 100644 (file)
@@ -92,7 +92,7 @@ Tyto trojice bude halda udr
 \::$(v,w,w(vw))=\<DeleteMin>(H)$
 \::$T:=T\cup\{vw\}$
 \::Pro v¹echny sousedy $u\in E\backslash T$ vrcholu $v$ upravím haldu:
 \::$(v,w,w(vw))=\<DeleteMin>(H)$
 \::$T:=T\cup\{vw\}$
 \::Pro v¹echny sousedy $u\in E\backslash T$ vrcholu $v$ upravím haldu:
-\:::Pokud je $u$ v~$H$ nový, pøidáme jej spolu s~nejlevnìj¹í hranou vedoucí z~$u$ do~$T$.
+\:::Pokud je $u$ v~$H$ nový, pøidáme jej spolu s~hranou $uv$
 \:::Pokud u¾ $u$ v~$H$ je a $uv$ je levnìj¹í ne¾ pùvodní nejlevnìj¹í hrana z~$u$
 do~$T$, nahradím jeho záznam v~$H$ za~$(u,v,w(uv))$ a provedu $\<DecreaseKey>(u,w(uv))$.
 \global\algcnt=\itemcount
 \:::Pokud u¾ $u$ v~$H$ je a $uv$ je levnìj¹í ne¾ pùvodní nejlevnìj¹í hrana z~$u$
 do~$T$, nahradím jeho záznam v~$H$ za~$(u,v,w(uv))$ a provedu $\<DecreaseKey>(u,w(uv))$.
 \global\algcnt=\itemcount
@@ -101,7 +101,7 @@ do~$T$, nahrad
 \>Správnost algoritmu pøímo plyne ze~správnosti Jarníkova algoritmu.
 
 \s{Èasová slo¾itost:}
 \>Správnost algoritmu pøímo plyne ze~správnosti Jarníkova algoritmu.
 
 \s{Èasová slo¾itost:}
-Slo¾itost tohoto algoritmu bude $\O(m+n\log n)$, nebo» vnitøní cyklus se provede
+Slo¾itost tohoto algoritmu bude $\O(m+n\log n)$, nebo» vnìj¹í cyklus se provede
 nanejvý¹ $n$-krát, za~\<DeleteMin> v~nìm tedy zaplatíme celkem $\O(n\log n)$, za~pøidávání
 vrcholù do~$H$ a~nalezání nejlevnìj¹ích hran zaplatíme celkem $\O(m)$ (na~ka¾dou hranu takto
 sáhneme nanejvý¹ dvakrát), za~sni¾ování vah vrcholù v~haldì rovnì¾ pouze $\O(m)$
 nanejvý¹ $n$-krát, za~\<DeleteMin> v~nìm tedy zaplatíme celkem $\O(n\log n)$, za~pøidávání
 vrcholù do~$H$ a~nalezání nejlevnìj¹ích hran zaplatíme celkem $\O(m)$ (na~ka¾dou hranu takto
 sáhneme nanejvý¹ dvakrát), za~sni¾ování vah vrcholù v~haldì rovnì¾ pouze $\O(m)$
index da0a06d65701ae65e973769800f590dbef29a0e8..f6371443a636c8866bf97ec6f77769dd48f8e46c 100644 (file)
@@ -177,7 +177,9 @@ v~sum
 \endalgo
 
 Slo¾itosti operací jsou pìkné, ale nesmíme zapomenout, ¾e strukturu
 \endalgo
 
 Slo¾itosti operací jsou pìkné, ale nesmíme zapomenout, ¾e strukturu
-je na~poèátku nutné inicializovat, co¾ trvá $\Omega(\sqrt U)$.
+je na~poèátku nutné inicializovat, co¾ trvá $\Omega(\sqrt U)$.\foot{Svádí
+to k~nápadu ponechat pøihrádky neinicializované a nejdøíve se v¾dy zeptat
+sumárního stromu, ale tím bychom si pokazili èasovou slo¾itost.}
 Z~následujících úvah ov¹em vyplyne, ¾e si inicializaci mù¾eme
 odpustit.
 
 Z~následujících úvah ov¹em vyplyne, ¾e si inicializaci mù¾eme
 odpustit.
 
@@ -240,7 +242,7 @@ z
 \>Rozcvièka: {\I nejpravìj¹í jednièka} ve~dvojkovém èísle (hodnota, nikoliv pozice):
 \alik{
         x&=\0\1\9\9\9\0\1\1\0\0\0\0\0\0 \cr
 \>Rozcvièka: {\I nejpravìj¹í jednièka} ve~dvojkovém èísle (hodnota, nikoliv pozice):
 \alik{
         x&=\0\1\9\9\9\0\1\1\0\0\0\0\0\0 \cr
- x - 1&=\0\1\9\9\9\0\1\0\1\1\0\0\0\1 \cr
+ x - 1&=\0\1\9\9\9\0\1\0\1\1\1\1\1\1 \cr
  x \land (x - 1)&=\0\1\9\9\9\0\1\0\0\0\0\0\0\0 \cr
  x \oplus (x \land (x - 1))&=\0\0\9\9\9\0\0\1\0\0\0\0\0\0 \cr}
 
  x \land (x - 1)&=\0\1\9\9\9\0\1\0\0\0\0\0\0\0 \cr
  x \oplus (x \land (x - 1))&=\0\0\9\9\9\0\0\1\0\0\0\0\0\0 \cr}
 
@@ -359,8 +361,7 @@ po~$b$ bitech.
 
 \:$\#1(\alpha)$ -- spoèítá jednièkové bity v~zadaném èísle.
 
 
 \:$\#1(\alpha)$ -- spoèítá jednièkové bity v~zadaném èísle.
 
-Staèí provést \<Unpack> (výsledek se dokonce vejde do~$b\log b$ bitù)
-a následnì \<Sum>.
+Staèí provést \<Unpack> a následnì \<Sum>.
 
 \:$\<Permute>_\pi(\alpha)$ -- pøehází bity podle zadané fixní permutace.
 
 
 \:$\<Permute>_\pi(\alpha)$ -- pøehází bity podle zadané fixní permutace.