Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -module(tut).
- -export([fib/1]).
- -export([fib2/2]).
- %% Dåliga
- fib ( 0 ) ->
- 0;
- fib ( 1 ) ->
- 1;
- fib ( N ) ->
- fib( N - 1 ) + fib( N - 2 ).
- %% Med dynamisk programmering
- fib2 ( 0, Memo ) ->
- [0];
- fib2 ( 1, Memo ) ->
- [0, 1];
- fib2 ( N, Memo ) ->
- case length(Memo) =< 2 of
- true -> lists:nth(N, Memo)
- end,
- case length(Memo) < N - 2 of
- false -> fib2 ( N - 2, Memo)
- end,
- case length(Memo) < N - 1 of
- false -> fib2 ( N - 1, Memo)
- end,
- lists:append([Memo, [lists:nth(N - 1, Memo) + lists:nth(N - 2, Memo)]].
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement