我们知道,在Haskell中,一组元素在
Data.Set
Ord
上课。
然而,一般集合不需要其elememt作为
作战需求文件
. 因为集合没有重复的元素,所以它的元素是
Eq
上课就够了。
[a]
,但是单链接列表的效率不如BST,而BST需要
作战需求文件
上课。
set
类不需要其元素是可排序的。只有
__eq__
和
__ne__
情商
类)定义足够,例如:
class Fruit:
def __init__(self, name):
self.name = name.title()
def __repr__(self):
return self.name
def __eq__(self, other):
return self.name == other.name # defines the equality operation
def __ne__(self, other):
return self.name != other.name # defines the unequality operation
def __hash__(self):
return hash(self.name) # so that Fruit instance can be an element of a set
?:x=水果('苹果')
?:y=水果('苹果')
?:z=水果('苹果')
{苹果}
?:x<=y
回溯(最近一次呼叫时间):
文件“”,模块中的第1行
x <= y
所以我想知道Haskell中是否有一些有效的数据结构可以用来表示
Set
但不需要
作战需求文件