¿Cómo resolvemos la recurrencia T(n)=2T(n/3)+nlogn ?
Además, ¿es posible resolver esta recurrencia por el método Maestro?
¿Cómo resolvemos la recurrencia T(n)=2T(n/3)+nlogn ?
Además, ¿es posible resolver esta recurrencia por el método Maestro?
Pista: Se puede resolver mediante Teorema maestro .
Un método más genérico es Akra Bazzi pero no lo necesitas para este problema.
A mí me parece que encaja en el caso 3, como se muestra en la página de Wikipedia. a=2,b=3,f(n)=nlog(n)=Ω(nlog3(2)+ϵ), si toma ϵ=0.4 digamos. 2f(n3)=2n3logn3≤cf(n) para grandes n si .667≤c≤1
¿por qué tomas ϵ=0.4 también la lógica de c siendo mayor que .667 no es clara para mí, lo siento soy un noob :(
Para aplicar el Teorema Maestro definimos a=2 , b=3 y f(n)=nlgn
Desde [ nlog32+0.4≈n ], tenemos que f(n)=Ω(nlogba+ϵ) , donde ϵ=0.4 . La condición de regularidad en f(n) se verificará si, para algún c<1 : 2n3lg(n/3)≤cnlg(n) Puesto que está claro que (23)n(lgn−lg3)<(23)nlg(n) la constante c=23<1 es tal que la condición de regularidad se cumple para n suficientemente grande. Así, el caso 3 del Teorema Maestro y T(n)=Θ(nlgn) contestando a la pregunta.
Existe otra recurrencia estrechamente relacionada que admite una solución exacta exacta. Supongamos que tenemos T(0)=0 y T(1)=T(2)=1 y para n≥3 T(n)=2T(⌊n/3⌋)+n⌊log3n⌋.
Además, dejemos que la representación de base tres de n sea n=⌊log3n⌋∑k=0dk3k.
Entonces podemos desenrollar la recurrencia para obtener lo siguiente exacto fórmula para n≥3 T(n)=2⌊log3n⌋+⌊log3n⌋−1∑j=02j×(⌊log3n⌋−j)×⌊log3n⌋∑k=jdk3k−j.
Ahora para obtener un límite superior considere una cadena de dos dígitos para obtener T(n)≤2⌊log3n⌋+⌊log3n⌋−1∑j=02j×(⌊log3n⌋−j)×⌊log3n⌋∑k=j2×3k−j. Esto se simplifica a (9⌊log3n⌋−18)×3⌊log3n⌋+17×2⌊log3n⌋+⌊log3n⌋+2.
Este límite se alcanza realmente y no puede mejorarse, al igual que el límite inferior, que se produce con un dígito uno seguido de ceros para dar T(n)≥2⌊log3n⌋+⌊log3n⌋−1∑j=02j×(⌊log3n⌋−j)×3⌊log3n⌋−j. Esto se simplifica a (3⌊log3n⌋−6)×3⌊log3n⌋+7×2⌊log3n⌋.
Uniendo los términos dominantes de los límites superior e inferior obtenemos la asíntota ⌊log3n⌋×3⌊log3n⌋∈Θ(log3n×3log3n)=Θ(logn×n).
Obsérvese que existe un término de orden inferior 2⌊log3n⌋∈Θ(3log32×log3n)=Θ(nlog32).
Este término representa la asíntota generada por la recursividad de la recurrencia.
Ambos coinciden con lo que produciría el teorema del Maestro.
Este Enlace MSE tiene una serie de cálculos similares.
I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.