有什么可以在 Erlang 中执行两个列表的合并吗?

Is there anything to perform union of two lists in Erlang?

我发现Erlang中有集合的集合操作,但是我找不到类似的列表操作。我想在 Erlang 的列表中执行基本的联合操作:

A = [1, 2, 3]
B = [1, 2, 5]
C = A union B = [1, 2, 3, 5]

如何在 Erlang 中执行此操作?

不过,我使用集合做了以下操作,并且有效。我只是想知道,我是否可以在没有布景的情况下做到这一点。

C = sets:to_list(sets:union(sets:from_list(A),sets:from_list(B))).

ordsets 模块将有序列表作为集合处理,使用与 sets 模块相同的 API。 https://erlang.org/doc/man/ordsets.html

您可以连接两个列表,然后对它们进行排序,删除重复项:

A = [1, 2, 3],
B = [1, 2, 5],
C = lists:usort(A ++ B).