在Scala中实现子集的最快方法
因此,根据(命题8),以下陈述是等效的:在Scala中实现子集的最快方法,scala,collections,set,Scala,Collections,Set,因此,根据(命题8),以下陈述是等效的: A是B的子集 A交叉口B等于A AunionB等于B AdifferenceB等于空集 Scala为我们提供了并集、交集和差分运算符,以及集合等式 考虑到这一点,在Scala中实现子集函数的最有效(运行时)方法是什么?子集函数的签名是什么?你的意思是不要使用内置的a.subsetOf(b)方法(在a长度上是线性的)?另请参见,代码是开源的,所以你可以看看它们是如何实现的。(它们都是线性的。)我想A.diff(B).isEmpty变量是最快的,因为is
- A
是B的子集
- A
B等于A交叉口
- A
B等于Bunion
- A
B等于空集difference
考虑到这一点,在Scala中实现
子集
函数的最有效(运行时)方法是什么?子集函数的签名是什么?你的意思是不要使用内置的a.subsetOf(b)
方法(在a
长度上是线性的)?另请参见,代码是开源的,所以你可以看看它们是如何实现的。(它们都是线性的。)我想A.diff(B).isEmpty
变量是最快的,因为isEmpty
检查与equals
比较(在其他情况下是线性的)相比是恒定的。但是这并不会改变整体线性复杂度的任何方面。子集
函数的签名是什么?你的意思是,不要使用内置的a.subsetOf(b)
方法(在a
长度上是线性的)?另外,代码是开源的,所以你可以看看它们是如何实现的。(它们都是线性的。)我想A.diff(B).isEmpty
变量是最快的,因为isEmpty
检查与equals
比较(在其他情况下是线性的)相比是恒定的。但这并不会改变整个线性复杂度。