11.08.2023 Views

Algoritmos - CAP1

Complejidad de algoritmos

Complejidad de algoritmos

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

12 TÉCNICAS DE DISEÑO DE ALGORITMOS

Para calcular las constantes c 1 y c 2 necesitamos utilizar las condiciones iniciales

de la ecuación original, obteniendo:

⎛ 1+

5 ⎞

T (0) = c ⎜ ⎟

1

2

⎝ ⎠

1

⎛ 1+

5 ⎞

T (1) = c ⎜ ⎟

1

2

⎝ ⎠

0

⎛1−

5 ⎞

+ c ⎜ ⎟

2

2

⎝ ⎠

1

⎛1−

5 ⎞

+ c ⎜ ⎟

2

2

⎝ ⎠

0

= c

= 1

1

+ c

Sustituyendo entonces en la ecuación anterior, obtenemos

2

= 0⎪

⎬ ⇒ c1

= −c

2

=

1

.

5

T ( n)

=

1 ⎛ 1+

5

⎝ 2

5 ⎞

n

1 ⎛1−

5

⎝ 2

5 ⎞

n

n

∈Ο(

ϕ ).

Caso 2: Raíces con multiplicidad mayor que 1

Supongamos que alguna de las raíces (p.e. r 1 ) tiene multiplicidad m>1. Entonces la

ecuación característica puede ser escrita en la forma

(x – r 1 ) m (x – r 2 )...(x – r k–m+1 )

en cuyo caso la solución de la ecuación en recurrencia viene dada por la expresión:

T ( n)

=

m

i=

1

c n

i

r

i−1

n

1

+

k

n

∑ciri

−m+

1

i=

m+

1

donde los coeficientes c i se determinan a partir de las condiciones iniciales.

Veamos un ejemplo en el que la ecuación en recurrencia es:

T(n) = 5T(n–1) – 8T(n–2) + 4T(n–3), n≥2

con las condiciones iniciales T(k) = k para k = 0, 1, 2. La ecuación característica

que se obtiene es x 3 – 5x 2 + 8x – 4 = 0, o lo que es igual (x–2) 2 (x–1) = 0 y por tanto,

T(n) = c 1 2 n + c 2 n2 n + c 3 1 n .

De las condiciones iniciales obtenemos c 1 = 2, c 2 = –1/2 y c 3 = –2, por lo que

T(n) = 2 n+1 – n2 n–1 – 2 ∈Θ(n2 n ).

Este caso puede ser generalizado de la siguiente forma. Si r 1 ,r 2 ,...,r k son las

raíces de la ecuación característica de una ecuación en recurrencia homogénea,

cada una de multiplicidad m i , esto es, si la ecuación característica puede expresarse

como:

(x − r 1

) m 1

(x − r 2

) m 2

...(x − r k

) m k

= 0 ,

entonces la solución a la ecuación en recurrencia viene dada por la expresión:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!