Dive into Ofuton

お布団に飛び込もう

2020-01-01から1年間の記事一覧

KotlinでMultiSetを雑に実装する

AtCoderの問題を解いているときにMultiSetがあると助かる場面があったためざっくり実装。 import java.util.TreeMap import java.util.TreeSet class SortedMultiSet<T>( comparator: Comparator<T>? = null, val map: TreeMap<T, Int> = TreeMap<T, Int>(comparator) ) :MutableSet<T></t></t,></t,></t></t>…

各種Mapへの要素追加、ランダムアクセス、イテレーションの実行速度

Kotlinで使用できるMapは主に HashMap (hashMapOf) LinkedHashMap (mutableMapOf) TreeMap (sortedMapOf) の3つ。 結論から書くと、 要素の追加はHashMapが最も速い。次にLinkedHashMap。TreeMapは遅い。 ランダムアクセスはHashMapとLinkedHashMapがほぼ同…

KotlinでCollectionをソートするときのメモ

Mutableなやつ sort() sort()を使うとコレクション自身がソートされるので何も返ってこない点に注意。 val list = mutableListOf(5, 1, 3, 2, 4) list.sort() println(list) // [1, 2, 3, 4, 5] SortedSetを使う val set = sortedSetOf(5, 1, 3, 2, 4) print…