我试图找到这个函数的运行时间:
myst_fun_1([]) -> 0;
myst_fun_1(ListUsed = [_ | Tail]) -> length(ListUsed) + myst_fun_1(Tail).
因为这个长度函数是 O(N)
并且 myst_fun_1
被调用 N
次,运行时间是 O( N^2)
?我想知道我的理解是否正确。
最佳答案
myst_fun_1([]) -> 0;
myst_fun_1(ListUsed) ->
myst_fun_1(length(ListUsed), ListUsed).
myst_fun_1(Length, [_ | Tail]) ->
Length + myst_fun_1(Length-1, Tail).
O(N)
关于algorithm - 递归函数的运行时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52287897/