Resolver la recurrencia


12

¿Cómo puedo resolver la siguiente relación de recurrencia?

f(n)=f(n1)+f(nlogn)

55
¿Qué obtienes si intentas ? Parece que obtendrá un límite inferior de 2 Ω ( n / log n ) . f(n)=2f(nlogn)2Ω(n/logn)
Chandra Chekuri

2
@ChandraChekuri ¡Oh, eso es genial! Y hay un límite superior de : utilizamos el log de recurrencia n veces, y obtenemos que f ( n ) ( 1 + log n ) f ( n - log n ) . Luego aplicamos este n / log n veces y obtenemos f ( n ) ( 1 + log n2O(nloglogn/logn)lognf(n)(1+logn)f(nlogn)n/logn . Entonces, la brecha entre el límite superior y el límite inferior es solo log log n en el exponente. Esto es suficiente para mis propósitos, pero dejaré la pregunta abierta en caso de que alguien quiera y pueda cerrar la brecha. Muchas gracias Chandra! f(n)(1+logn)n/logn=2O(nloglogn/logn)loglogn
mobius dumpling

44
Bueno, el mismo truco da , entonces f ( n ) = 2 Θ ( n log log n / log n ) . f(n)(logn)f(n2logn)f(n)=2Θ(nloglogn/logn)
Emil Jeřábek

Respuestas:


14

f(n)=2Θ(nloglogn/logn) .

logn

f(n)=2f(nlogn)+f(nlogn1)++f(n2logn)lognf(nlogn) .
n/logn2Ω(nloglogn/logn)

logn

f(n)(logn+1)f(nlogn) .
n/logn2O(nloglogn/logn)
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.