算譜

赤黒木

赤黒木のinsertをOCamlで書きました. removeはもっと全然面倒で, 書いてはみたけどデバッグに途方に暮れ挫折しました. module type OrderedType = sig type t val compare : t -> t -> int end module Make(Ord : OrderedType) = struct type elt = Ord.t ty…

Heap

ここ数日, Dijkstra法が速くならないかと思ってFibonacci Heapを勉強して実装してみたんだけど, Binary Heapに較べて全く速くならなかった. なんだかなあ. もっともっと問題のサイズを大きくしたら違うのかもしれないけど, この場合どうもメモリ使用量の限界…