matematykaszkolna.pl
złożoność Benny: Podaj równanie rekurencyjne na liczbę porównań T(n) między elementami tablicy o n elementach. Korzystając z odpowiedniego twierdzenia, wyznacz asymptotyczną złożoność T(n). Dla uproszczenia przyjmij, że n=2k, dla pewnego naturalnego k.
5 lut 13:05
g: Jeżeli każdy z każdym to T(n)=n(n−1)/2, czyli złożoność jest typu wielomianowego n2. Konkretny algorytm (np sortowania) nie musi porównywać wszystkiego, tak więc złożoność zależy od algorytmu, a nie tylko od rozmiaru danych.
5 lut 14:48
Benny: @g, ale tu chodzi o równanie rekurencyjne. Chyba, że ja źle rozumiem treść.
5 lut 14:50
Pytający: T(0) = 0 T(1) = 0+0 = 0 T(2) = 0+1 = 1 T(3) = 1+2 = 3 T(4) = 3+3 = 6 T(5) = 6+4 = 10 T(n) = T(n−1)+(n−1) T(n) = T(n−1)+(n−1) = T(n−2)+(n−2)+(n−1) = T(0)+(n−n)+(n−(n−1))+...+(n−2)+(n−1) =
 1+(n−1) n(n−1) 
m=1n−1m =

*(n−1−1+1) =

 2 2 
Masz wzór rekurencyjny, ale wykorzystania "odpowiedniego twierdzenia" nie mam.
5 lut 15:41
Benny:
 n 
Gdybyśmy zapisali T(n)=aT(

)+f(n) to można skorzystać z rekurencji uniwersalnej.
 b 
5 lut 15:46
Benny:
 n n(n−1) 
T(n)=T(

)+

? emotka
 2 4 
5 lut 15:53
Benny: czyli T(n)=θ(n2log2n)?
5 lut 16:02
Pytający: Wzór z 15:53 jest zły.
 n n n n(n−1) 
n n 

(

−1)
2 2 
 
T(n) = T(

) + T(n)−T(

) = T(

) +


=
 2 2 2 2 2 
 n n(3n−2) 
T(

) +

 2 8 
5 lut 16:39
Benny: Tak wiem, z pośpiechu to zrobiłem emotka
5 lut 16:51
Pytający: I T(n)=θ(n2), więc jeśli wyjdzie to inaczej, to źle (jakkolwiek to liczysz). emotka
5 lut 16:56
Benny: Tak mi też wyszło.
5 lut 17:08
Benny: Chociaż chyba wyszło mi nlog2n
5 lut 17:09
Benny: n2log2n
5 lut 17:09