Co otrzymasz, jeśli spróbujesz ? Wygląda na to, że otrzymasz dolną granicę 2 Ω ( n / log n ) . f(n)=2f(n−logn)2)Ω ( n / logn )
Chandra Chekuri
2
@ChandraChekuri Och, to świetnie! I jest górna granica : używamy log rekurencji n razy i otrzymujemy f ( n ) ≤ ( 1 + log n ) f ( n - log n ) . Następnie stosujemy n / log n razy i otrzymujemy f ( n ) ≤ ( 1 + log n2)O ( n loglogn / logn )lognfa( n ) ≤ ( 1 + logn ) f( n - logn )n / logn . Tak więc różnica pomiędzy górnymi i dolnymi związany jest związany tylko log log n w wykładniku. To właściwie wystarcza do moich celów, ale pozostawię pytanie otwarte, na wypadek, gdyby ktoś chciał i był w stanie wypełnić lukę. Dziękuję bardzo, Chandra! fa( n ) ≤ ( 1 + logn )n / logn= 2O ( n loglogn / logn )loglogn
mobius dumpling
4
Cóż, ta sama sztuczka daje , więc f ( n ) = 2 Θ ( n log log n / log n ) . fa( n ) ≥ ( logn ) f( n - 2 logn )fa( n ) = 2Θ ( n loglogn / logn )
Emil Jeřábek
Odpowiedzi:
14
@Chandra, @Emil i ja rozwiązaliśmy pytanie w komentarzach. Rozwiązaniem jest
fa( n ) = 2Θ ( n loglogn / logn ).
Aby zobaczyć dolną granicę, zastosuj definicji rekurencji n razy, aby uzyskać f ( n ) = 2 f ( n - log n ) + f ( n - log n - 1 ) + … + f ( n - 2 log n ) ≥ log n ⋅ f ( n - log n ) .
Użyj tej nierówności n / loglogn
fa( n ) = 2 f( n - logn ) + f( n - logn - 1 ) + … + f( n - 2 logn ) ≥ logn⋅ f( n - logn ) .
razy i otrzymujemy, że rozwiązaniem jest 2 Ω ( n log log n / log n ) .n / logn2)Ω ( n loglogn / logn )
Odpowiedzi:
@Chandra, @Emil i ja rozwiązaliśmy pytanie w komentarzach. Rozwiązaniem jest
Aby zobaczyć dolną granicę, zastosuj definicji rekurencji n razy, aby uzyskać f ( n ) = 2 f ( n - log n ) + f ( n - log n - 1 ) + … + f ( n - 2 log n ) ≥ log n ⋅ f ( n - log n ) . Użyj tej nierówności n / loglogn
źródło