赤黒木 | 目次 |
最新版は Scala Documentation に移行しました。
赤黒木は、ノードが「赤」か「黒」に色付けされている平衡二分木の一種だ。他の平衡二分木と同様に演算は木のサイズのログ時間内に確実に完了する。
Scala は内部で赤黒木を使った不変集合と不変セットの実装を提供する。TreeSet と TreeMap クラスがそれだ。
scala> scala.collection.immutable.TreeSet.empty[Int] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
res11: scala.collection.immutable.TreeSet[Int] = TreeSet() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
scala> res11 + 1 + 3 + 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
res12: scala.collection.immutable.TreeSet[Int] = TreeSet(1, 3) |
続いては、不変ビット集合
赤黒木 | 目次 |