Scala 集合深度解析
1. 集合遍历效率分析
在遍历平衡树的元素时,不同的遍历方法有着不同的时间复杂度。使用 foreach 遍历方法,访问所有元素的成本大约为 2N;而使用迭代器遍历,成本则上升到 N log(N)。例如,当树有一百万个元素时, foreach 大约需要两百万步,而迭代器则需要大约两千万步。因此, foreach 方法具有明显的优势。
2. Iterable 的子类别
在 Iterable 的继承层次结构中,有三个重要的特质: Seq 、 Set 和 Map 。这三个特质都实现了 PartialFunction 特质,不过实现方式各有不同。
- 序列(Seq) : apply 操作是位置索引,元素从 0 开始编号。例如, Seq(1, 2, 3)(1) 的结果为 2。
- 集合(Set) : apply 操作是成员测试。例如, Set('a', 'b', 'c')('b') 的结果为 true ,而 Set()('a') 的结果为 false 。
- 映射(Map) :
超级会员免费看
订阅专栏 解锁全文
61

被折叠的 条评论
为什么被折叠?



