Rust標準ライブラリのBTreeMapの実装コードを参考にB+Treeをフルスクラッチで実装しました。 get, insert, remove, rangeなどの基本的な操作は実装できているので、ひとまずここに記録します。 ソースコードはGitHubリポジトリに公開しています。そちらもみて見てください github.com どなたかのB+Treeの実装や理解の参考になれば幸いです。 (1600行程度で収まったのでstd::collections::btree_mapより追いやすくなっていればいいなと) 実装した主な操作 Rustっぽい疑似コードです。細かい仕様はソースコードみてください。 fn get(key) -> Option<value> 入力に全順序なkeyを取る。もし要素が存在すれば、そのvalueを出力する。 fn insert(key, value) -> Option<o