要?jiǎng)h除Erlang列表中的重復(fù)項(xiàng),可以使用以下函數(shù):
-module(remove_duplicates).
-export([remove_duplicates/1]).
remove_duplicates(List) ->
F = fun(Elem, Acc) ->
case lists:member(Elem, Acc) of
true -> Acc;
false -> [Elem|Acc]
end
end,
lists:reverse(lists:foldl(F, [], List)).
使用該函數(shù)可以將一個(gè)包含重復(fù)項(xiàng)的列表轉(zhuǎn)換為一個(gè)不包含重復(fù)項(xiàng)的列表。例如:
remove_duplicates:remove_duplicates([1, 2, 3, 4, 4, 5, 6, 6, 7]).
% Output: [1,2,3,4,5,6,7]