jar*_*ryd 5 erlang list sequential
我正在尝试返回列表的最大值。
我有以下代码
list_max([]) ->
[];
list_max([H|T]) ->
list_max(H, T).
list_max(Temp, []) ->
Temp;
list_max(Temp, [H|T]) when H > Temp ->
Temp = H;
list_max(Temp, T).
Run Code Online (Sandbox Code Playgroud)
但是我很难与Erlang联系。
如何为temp分配某些内容并将其替换为最高?
Erlang 是我发现展示比解释更容易的语言之一。
list_max([] ) -> empty;
list_max([H|T]) -> {ok, list_max(H, T)}.
list_max(X, [] ) -> X;
list_max(X, [H|T]) when X < H -> list_max(H, T);
list_max(X, [_|T]) -> list_max(X, T).
Run Code Online (Sandbox Code Playgroud)
并这样称呼它:
{ok, Max} = list_max(MyList).
Run Code Online (Sandbox Code Playgroud)
抱歉,也许我错过了一些东西。您是否在寻找:
lists:max(List). %% Find the max in List
Run Code Online (Sandbox Code Playgroud)