Ver código fonte

Update 'lista4.md'

capella 7 anos atrás
pai
commit
8a3d923e79
1 arquivos alterados com 14 adições e 1 exclusões
  1. 14 1
      lista4.md

+ 14 - 1
lista4.md

@@ -151,7 +151,20 @@ Kesimo(A, p, r, k)
     retorna A[part]
 ```
 
-Note, o particiona é $O(n)$, assim como a mediana. Portanto o tempo de consumo desse algorítmo será $T(n) = T(n/2) + O(n)$. Vamos provar que é $O(n)$. Note que $T(1) = 1$
+Note, o particiona é $O(n)$, assim como a mediana. Portanto o tempo de consumo desse algorítmo será $T(n) = T(n/2) + O(n) = T(n/2) + an $. Vamos provar que é $O(n)$. Note que $T(1) = 1$
 
 BASE: $T(1) = 1 \leq c * 1 $
 
+HIPÓTESE: $T(n/2) \leq cn/2 x$
+
+$$ T(n) = T(n/2) + O(n) \leq c * n/2 + a * n \leq (c/2+a) n = c * n - n * c/2 + a * n$$
+
+Só falta peovar que:
+
+$$ - nc/2 + a * n \leq 0 $$
+$$ a * n \leq n * c/2 $$
+$$ 2 * a \leq c $$
+
+Como $a$ é uma contante que depende do particiona e da mediana e existe, logo existe $c$.
+
+###### 6. (CLRS 8.3-2) Quais dos seguintes algoritmos de ordenação são estáveis: insertionsort, mergesort, heapsort, e quicksort. Descreva uma maneira simples de deixar qualquer algoritmo de ordenação estáavel. Quanto tempo e/ou espaçco adicional a sua estratégia usa?