matematykaszkolna.pl
Rozwiązać następujące równania rekurencyjne Michał: Rozwiązać następujące równania rekurencyjne: b) T(1)=2 T(n)=T(n2)+2 n=2m T(2m)=T(2m−1)+2 <=> S(m)=S(m−1) S(m)=S(m−1)+2=S(m−2)+4=S(m−3)+6=...=S(m−k)+2k=...m=k=S(m−m)+2m=S(0)+2m= ? Tutaj się zaciąłem, ponieważ nie wiem ile powinno wynosić S(0), pomoże ktoś ?emotka
19 lis 13:00
jc: S(m)=T(2m) jak się domyślam, a czego nie napisałeś S(0)=T(20)=T(1)=2
19 lis 13:22
Michał: ok, dzięki emotka
19 lis 13:24
Mariusz: Analizujesz złożoność jakiegoś algorytmu rekurencyjnego ? Zapisz swój algorytm w równoważnej postaci iteracyjnej wtedy może łatwiej będzie ci oszacować złożoność Zadanie bonusik ile pamięci będzie potrzebował algorytm rekurencyjny (rekurencja korzysta za stosu dlatego jeśli nie potrafimy zastąpić rekurencji za pomocą instrukcji iteracyjnej to jawnie korzystamy ze stosu) Niedawno widziałem podobną rekurencję dla algorytmu minmax metodą divide et impera Złożoność wyszła O(n)
19 lis 14:01
Mariusz: Twoja rekurencja to złożoność wyszukiwania binarnego zatem otrzymamy O(logn) ale gdybyśmy mieli rekurencję
 n 
T(n)=2T(

)+2
 2 
to otrzymalibyśmy złożoność liniową O(n)
19 lis 14:18