NEPLg2 Standard Library - btreeset - btreeset
Web Playground
Web Playground

btreeset

順序付きじゅんじょつき set

目的もくてき

  • BTreeSet<.T>提供ていきょうし、new / insert / contains / remove / len / clear / free の bare 名であつかえるようにします。
  • 要素ようそ比較ひかくOrd trait に委譲いじょうし、i32 固定の collection から脱却だっきゃくします。

実装じっそう

  • 名前なまえBTreeSet ですが、実体じったい整列済せいれつずみ key 配列はいれつです。
  • 検索けんさくは lower_bound、挿入そうにゅう / 削除さくじょは shift で実装じっそうします。

注意ちゅうい

  • 本物ほんものの B-tree ではありません。
  • Ord impl が全順序ぜんじゅんじょたすことを前提ぜんていにします。

計算量けいさんりょう

  • contains は O(log n)、insert / remove は O(n) です。

BTreeSet

順序付きじゅんじょつき key 配列はいれつ本体ほんたい

new

からBTreeSet<.T>つく

len

要素数ようそすうかえ

contains

key の存在そんざいたしかめる

insert

key を集合しゅうごう挿入そうにゅうする

remove

key を集合しゅうごうから削除さくじょする

clear

全要素ぜんようそ削除さくじょする

free

内部ないぶメモリを解放かいほうする