演習: カウンター
この演習では、非常にシンプルなデータ構造を汎用的なものにします。std::collections::HashMap
を使用して、どの値が確認され、各値が何回出現したかを追跡します。
Counter
の初期バージョンは、u32
の値でのみ機能するようにハードコードされています。追跡する値の型に対して構造体とそのメソッドをジェネリック化します。これにより、Counter
であらゆる型の値を追跡できます。
早めに終わった場合は、entry
メソッドを使用して、count
メソッドの実装に必要なハッシュ ルックアップの回数を半分にしてみましょう。