在线文档教程
Erlang 20

ordsets

ordsets

模块

ordsets

模块摘要

函数,用于将集合操作为有序列表。

描述

集合是没有重复元素的元素的集合。An ordset是集合的表示,其中有序列表用于存储集合的元素。有序列表比无序列表更有效。元素根据Erlang术语顺序排序

该模块提供与模块相同的界面,sets(3)但具有定义的表示。一个不同之处在于,sets如果两个元素不匹配(如果它们不匹配(=:=),则认为这两个元素是不同的,当且仅当它们不比较equal(==)时,该模块将两个元素视为不同。

数据类型

ordset(T) = [T]

new/0返回

输出

add_element(Element, Ordset1) -> Ordset2

类型

返回从形成一个新的有序集合Ordset1Element插入。

del_element(Element, Ordset1) -> Ordset2

类型

返回Ordset1,但Element已删除。

filter(Pred, Ordset1) -> Ordset2

类型

使用布尔函数Pred来过滤Ordset1中的元素。

fold(Function, Acc0, Ordset) -> Acc1

类型

折叠功能覆盖Ordset中的每个元素并返回累加器的最终值。

from_list(List) -> Ordset

类型

返回一组有序的元素List

intersection(OrdsetList) -> Ordset

类型

返回集合的非空列表的交集。

intersection(Ordset1, Ordset2) -> Ordset3

类型

返回的交集Ordset1Ordset2

is_disjoint(Ordset1, Ordset2) -> boolean()

类型

如果Ordset1和Ordset2不相交(没有共同的元素),则返回true,否则返回false。

is_element(Element, Ordset) -> boolean()

类型

如果Element是Ordset的元素,则返回true,否则返回false。

is_set(Ordset) -> boolean()

类型

如果Ordset是一组有序的元素,则返回true,否则返回false。

is_subset(Ordset1, Ordset2) -> boolean()

类型

当Ordset1的每个元素也是Ordset2的成员时返回true,否则返回false。

new() -> []

返回一个新的空有序集。

size(Ordset) -> integer() >= 0

类型

返回Ordset中的元素数量

subtract(Ordset1, Ordset2) -> Ordset3

类型

仅返回Ordset1那些不是元素Ordset2的元素。

to_list(Ordset) -> List

类型

返回Ordset作为一份清单。

union(OrdsetList) -> Ordset

类型

返回集合列表的合并(联合)集合。

union(Ordset1, Ordset2) -> Ordset3

类型

返回的合并(联合)组Ordset1Ordset2

另见

gb_sets(3)sets(3)