Algoritmos e complexidade Notas de aula - Arquivo Escolar
Algoritmos e complexidade Notas de aula - Arquivo Escolar Algoritmos e complexidade Notas de aula - Arquivo Escolar
A. Conceitos matemáticos definição. Para n > 2 define ¯ Θ = i∈[2,n] Θi tal que Θ + ¯ Θ = 1. Com isso temos f i∈[n] Θixi = f Θ1x1 + onde y = j∈[2,n] (Θj/ ¯ Θ)xj, logo f i∈[n] A.2. Somatório i∈[2,n] Θixi ≤ Θ1f(x1) + ¯ Θf(y) = Θ1f(x1) + ¯ Θf ≤ Θ1f(x1) + ¯ Θ Θixi = f(Θ1x1 + ¯ Θy) j∈[2,n] j∈[2,n] (Θj/ ¯ Θ)xj (Θj/ ¯ Θ)f(xj) = i∈[n] Θixi Revisão: Notação Somatório Para k uma constante arbitrária temos n n kai = k ai Distributividade (A.25) 298 i=1 i=1 n k = nk (A.26) i=1 n i=1 j=1 m n aibj = n (ai + bi) = i=1 p ai + i=1 n ap−i = i=0 n i=p+1 i=1 ai n ai + i=1 ai = p i=p−n ai ⎛ m ⎝ n i=1 j=1 bj ⎞ ⎠ Distributividade generalizada (A.27) n bi Associatividade (A.28) i=1 ai (A.29) (A.30)
A.2. Somatório A última regra é um caso particular de troca de índice (ou comutação) para somas. Para um conjunto finito C e uma permutação dos números inteiros π temos ai = aπ(i). i∈C π(i)∈C No exemplo da regra acima, temos C = [0, n] e π(i) = p − i e logo ap−i = ap−(i−p) = ai. 0≤i≤n 0≤p−i≤n p−n≤i≤p Parte da análise de algoritmos se faz usando somatórios, pois laços while e for em geral podem ser representados por somatórios. Como exemplo, considere o seguinte problema. Dadas duas matrizes matA e matB, faça um algoritmo que copie a matriz triangular inferior de matB para matA. Algoritmo A.1 (CopiaMTI) Entrada Matrizes quadráticos A e B e dimensão n. Saída Matriz A com a matriz triangular inferior copiada de B. 1 for i := 1 to n do 2 for j := 1 to i do 3 Aij = Bij 4 end for 5 end for Uma análise simples deste algoritmo seria: Séries n i = i=1 n i=0 n(n + 1) 2 n x i = xn+1 − 1 x − 1 i=1 j=1 i 1 = n i = n(n + 1)/2 = O(n 2 ) i=1 série aritmética (A.31) série geométrica, para x = 1 (A.32) 299
- Page 250 and 251: 11. Do algoritmo ao problema Decibi
- Page 253 and 254: 12. Classes de complexidade 12.1. D
- Page 255 and 256: 12.2. Hierarquias básicas Prova. (
- Page 257 and 258: 12.2. Hierarquias básicas 1. Temos
- Page 259: 12.3. Exercícios 12.3. Exercícios
- Page 262 and 263: 13. Teoria de NP-completude • Int
- Page 264 and 265: 13. Teoria de NP-completude C-≤-d
- Page 266 and 267: 13. Teoria de NP-completude Ladrilh
- Page 268 and 269: 13. Teoria de NP-completude (q, a)
- Page 270 and 271: 13. Teoria de NP-completude Sejam c
- Page 272 and 273: 13. Teoria de NP-completude Decisã
- Page 275 and 276: 14. Fora do NP Classes fora do P-NP
- Page 277 and 278: A classe co-NP 14.1. De P até PSPA
- Page 279 and 280: 14.1. De P até PSPACE Para provar
- Page 281 and 282: A hierarquia polinomial Mais exempl
- Page 283 and 284: • Agora, consideramos os seguinte
- Page 285: 14.3. Exercícios The equivalence p
- Page 288 and 289: 15. Complexidade de circuitos x1 ¬
- Page 290 and 291: 15. Complexidade de circuitos Corol
- Page 292 and 293: 15. Complexidade de circuitos Teore
- Page 295 and 296: A. Conceitos matemáticos Nessa se
- Page 297 and 298: Proposição A.3 (Regras para pisos
- Page 299: 2 1 0 0 1 2 3 4 5 6 7 8 9 10 A.1. F
- Page 303 and 304: Uma aplicação: 1≤i≤n ix i =
- Page 305 and 306: Lema A.1 (Definição alternativa d
- Page 307: A.6. Grafos e ∩ f = ∅. Para um
- Page 310 and 311: B. Soluções dos exercícios Prova
- Page 312 and 313: B. Soluções dos exercícios Prova
- Page 314 and 315: B. Soluções dos exercícios 6. n
- Page 316 and 317: B. Soluções dos exercícios c fix
- Page 318 and 319: B. Soluções dos exercícios 9 ret
- Page 320 and 321: B. Soluções dos exercícios Anali
- Page 323 and 324: Índice DSPACE, 252 DTIME, 252 NP,
- Page 325 and 326: função concava, 297 convexa, 297
- Page 327: teorema de Savitch, 256 tese de Cob
- Page 330 and 331: Bibliografia [15] Thomas H. Cormen
- Page 332 and 333: Bibliografia [42] Jon Kleinberg e
- Page 334: Bibliografia [72] V. Vassilevska Wi
A. Conceitos matemáticos<br />
<strong>de</strong>finição. Para n > 2 <strong>de</strong>fine ¯ Θ = <br />
i∈[2,n] Θi tal que Θ + ¯ Θ = 1. Com isso<br />
temos<br />
f <br />
i∈[n]<br />
<br />
Θixi = f Θ1x1 + <br />
on<strong>de</strong> y = <br />
j∈[2,n] (Θj/ ¯ Θ)xj, logo<br />
f <br />
i∈[n]<br />
A.2. Somatório<br />
i∈[2,n]<br />
<br />
Θixi ≤ Θ1f(x1) + ¯ Θf(y)<br />
= Θ1f(x1) + ¯ Θf <br />
≤ Θ1f(x1) + ¯ Θ <br />
<br />
Θixi = f(Θ1x1 + ¯ Θy)<br />
j∈[2,n]<br />
j∈[2,n]<br />
(Θj/ ¯ <br />
Θ)xj<br />
(Θj/ ¯ Θ)f(xj) = <br />
i∈[n]<br />
Θixi<br />
Revisão: Notação Somatório<br />
Para k uma constante arbitrária temos<br />
n<br />
n<br />
kai = k ai Distributivida<strong>de</strong> (A.25)<br />
298<br />
i=1<br />
i=1<br />
n<br />
k = nk (A.26)<br />
i=1<br />
n<br />
i=1 j=1<br />
m<br />
<br />
n<br />
aibj =<br />
n<br />
(ai + bi) =<br />
i=1<br />
p<br />
ai +<br />
i=1<br />
n<br />
ap−i =<br />
i=0<br />
n<br />
i=p+1<br />
i=1<br />
ai<br />
n<br />
ai +<br />
i=1<br />
ai =<br />
p<br />
i=p−n<br />
ai<br />
⎛<br />
m<br />
⎝<br />
n<br />
i=1<br />
j=1<br />
bj<br />
⎞<br />
⎠ Distributivida<strong>de</strong> generalizada (A.27)<br />
n<br />
bi Associativida<strong>de</strong> (A.28)<br />
i=1<br />
ai<br />
<br />
(A.29)<br />
(A.30)