版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_38278878/article/details/85223020
-module(unique).
-export([unique_1/1, unique_2/1]).
%% @doc 通过遍历去重
-spec unique_1(List) -> Return when
List :: list(),
Return :: list().
unique_1(List) ->
unique_1(List, []).
unique_1([], ResultList) -> ResultList;
unique_1([H|L], ResultList) ->
case lists:member(H, ResultList) of
true -> unique_1(L, ResultList);
false -> unique_1(L, [H|ResultList])
end.
%% @doc 利用set结构去重
-spec unique_2(List) -> Return when
List :: list(),
Return :: list().
unique_2(List) ->
Set = sets:from_list(List),
sets:to_list(Set).
前者的效率和性能要高于后者。