|
@@ -148,7 +148,7 @@ Particione-D(A, p, r)
|
|
para j <- p, p+5, p+10 ... p+5*(n+1)/5-1
|
|
para j <- p, p+5, p+10 ... p+5*(n+1)/5-1
|
|
ordena_5_elementos
|
|
ordena_5_elementos
|
|
para j <- 1 até (n+1)/5-1 #numero de elementos medianos
|
|
para j <- 1 até (n+1)/5-1 #numero de elementos medianos
|
|
- A[p - 1 + j] <--> A[p + 5*j -3] #colocar os pedianos no inicio
|
|
|
|
|
|
+ A[p - 1 + j] <--> A[p + 5*j -3] #colocar as medianas no inicio
|
|
[p - 1 + ceil(n/5)] <--> A[ floor((p + 5 * floor(n/5) + r)/2) ] // meio do último intervalo...
|
|
[p - 1 + ceil(n/5)] <--> A[ floor((p + 5 * floor(n/5) + r)/2) ] // meio do último intervalo...
|
|
|
|
|
|
k <-- Particione-D(A, p, p+ceil(n/5), floor( (ceil(n/5) + 1)/2 ))
|
|
k <-- Particione-D(A, p, p+ceil(n/5), floor( (ceil(n/5) + 1)/2 ))
|
|
@@ -183,7 +183,14 @@ Que é o que queríamos provar. Agora que sabemos que o Particione-D é $\Theta(
|
|
|
|
|
|
$$T(n) \leq O(n) + T(max(k, n−k)) \leq O(n) + T(9n/10)$$
|
|
$$T(n) \leq O(n) + T(max(k, n−k)) \leq O(n) + T(9n/10)$$
|
|
|
|
|
|
-Pdemos proceder da mesma maneira que na parte anterior, mas vamos fazer diferente. Sabemos que queremos provar que $T(n)$ é $O(n)$, ou seja $T(n) < cn$ (isso será nossa hipótese de indução).
|
|
|
|
|
|
+Podemos proceder da mesma maneira que na parte anterior, mas vamos fazer diferente. Sabemos que queremos provar que $T(n)$ é $O(n)$, ou seja $T(n) < cn$ (isso será nossa hipótese de indução).
|
|
|
|
+
|
|
|
|
+...
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+###### 10
|
|
|
|
+
|
|
|
|
+A) Olha os dois vetores e pega o maior em cada um deles, se o outro vetor tiver acabado compara com 0.
|
|
|
|
|
|
|
|
|
|
|
|
|