Как я узнал в SICP, сложность рекурсии дерева растет экспоненциально с увеличением n. Если бы в Haskell я написал вроде,
fib n | n <= 1 = n
| otherwise = fib (n-1) + fib (n-2)
Верно ли, что, поскольку Haskell ленив, он вычисляет fib 1
, _3 _... все один раз, поэтому сложность линейна с n?
n
добавлению - O (n)? - person dfeuer   schedule 01.09.2016