matematykaszkolna.pl
. asdf: Witam emotka Równanie rekurencyjne: Mam takie równanie rekurencyjne T(n), dla n = logbn, i mam zbadać θ (czasochłonność algorytmu) dla przypadków: a > b, a = b, a < b
  c, n=1  
T(n) = a*T(nb) + cn, n>1
no to liczę:
 n 
T(n) = a * T(

) + cn =
 b 
 
n 

b 
 n n 
a * (a*T(

) + cn) + cn = a * (a*T(

) + c

) + cn =
 b b2 b 
 n cna 
a2*T(

) +

+ cn =
 b2 b 
 n a 
a2*T(

) + cn(

+ 1) =
 b2 b 
 n n a 
a2*(a*T(

) +c*

) + cn(

+ 1) =
 b3 b2 b 
 n na2 a 
a3*T(

) +c*

) + cn(

+ 1) =
 b3 b2 b 
 n a2 a 
a3*T(

) +cn*

) + cn(

+ 1) =
 b3 b2 b 
 n a2 a 
a3*T(

) +cn(

+

+ 1) =
 b3 b2 b 
....
 n ak−1 a1 a0 
ak*T(

) + cn(

+ .. +

+

)
 bk bk−1 b1 b0 
piersza część: dla k = logbnbk = n
 [c[bk] ak−1 a1 a0 
ak*T(

) + cn(

+ .. +

+

) =
 bk bk−1 b1 b0 
 ak−1 a1 a0 
ak*T(1) + cn(

+ .. +

+

) =
 bk−1 b1 b0 
T(1) = c, czyli:
 ak−1 a1 a0 
ak*c + cn(

+ .. +

+

) =
 bk−1 b1 b0 
−−−−−−−−−−−−−
 n 
n = bk, czyli

= 1, c*1 = c
 bk 
−−−−−−−−−−−−−
 n ak−1 a1 
ak*c*

+ cn(

+ .. +

+ 1) =
 bk bk−1 b1 
 ak ak−1 a1 
cn(

+

+ .. +

+ 1)
 bk bk−1 b1 
kolejna część: a = b cn(1 + 1 + ... + 1) = cn(k + 1), czy samo cn*k? (wydaje mi się, że k+1, ale nie jestem tego właśnie pewien ), ale i tak tutaj to będzie liniowe?: cn, czyli θ(n)? kolejna część: a < b
 ak ak−1 a1 
cn(

+

+ .. +

+ 1)
 bk bk−1 b1 
 ak 
limk→(

) = 0, ale jest to suma ciągu, więc jeżeli a > b, a nie wiadomo o jak dużo
 bk 
jest to większe, więc są to już tak małe wartości, że można je pominąć? zapis: →0 = "dąży do zera" cn(→ 0 + → 0 + ...+ → 0 + 1) = cn *1 = cn i wychodzi mi czasochłonność algorytmu liniowa, a w odpowiedzi jest: θ(n*logbn), gdy a = b kolejna część: a > b, tego nie wiem jak zrobić
 ak ak−1 a1 
cn(

+

+ .. +

+ 1)
 bk bk−1 b1 
..
7 maj 02:43
asdf: :(?
7 maj 09:29
asdf: :(
7 maj 20:33
asdf: :(!11jedenjeden
7 maj 23:17
Subi: może nie pomogę ale mam pytanie: czy równania redukcyjne mogą zdarzyć się na maturze rozszerzonej?
7 maj 23:24
asdf: a nie wiem, nie pisałem rozszerzonej matematyki, więc też nie pomogę Ale na pewno nie takie równania rekurencyjne − te jest zbyt trudne.
8 maj 00:08
LoL2o10: Moga.
8 maj 01:15
Mateusz: Nie, na maturze z matematyki nie ma równan rekurencyjnych rekurencja zazwyczaj moze wystąpic na maturze z informatyki ale bedzie sie to zazwyczaj odnosiło do rozpisania drzewka wywołań czy odgadniecia ogolnego wzoru.
8 maj 11:21
Trivial:
a 

→ 0 ? Ciekawe...
b 
8 maj 16:52
Trivial:
 n 
T(n) = aT(

) + cn
 b 
 n a 
= a2T(

) +

cn + cn
 b2 b 
 n a2 cn 
= a3T(

) +

cn +

cn + cn
 b3 b2 b 
 n a3 a2 cn 
= a4T(

) +

cn +

cn +

cn + cn
 b4 b3 b2 b 
 n 
= a4T(

) + (ab)3cn + (ab)2cn + (ab)cn + cn
 b4 
 n 
= akT(

) + cn*((ab)k−1 + ... + (ab) + 1)
 bk 
 n (ab)k−1 
= akT(

) + cn*

 bk (ab)−1 
Podstawiamy n = bk i mamy:
 (ab)k−1 
T(n) = akT(1) + cn*

 u−1 
 (ab)logbn−1 
= c*(alogbn + n*

)
  ab−1 
 
alogbn 

−1
n 
 
= c*(alogbn + n*

)
  ab−1 
 alogbn−n 
= c*(alogbn +

)
  ab−1 
 b b 
= c*(alogbn +

*alogbn

*n)
 a−b a−b 
 c 
=

*(a1+logbn − bn)
 a−b 
8 maj 17:18
Trivial: A dla przypadku a = b:
 n 
T(n) = akT(

) + cn*((ab)k−1 + ... + (ab) + 1)
 bk 
 n 
= akT(

) + cn*(1 + 1 + ... + 1)
 ak 
 n 
= akT(

) + ckn
 ak 
= aloganT(1) + cnlogan = cn + cnlogan = cn(1+logan) = Θ(nlogan)
8 maj 17:24