Map<Key, Integer> frequencies(List<Item> items) {
Map<Key, Integer> counts = new HashMap<>();
for (Item item : items) {
Key key = keyOf(item);
counts.put(key, counts.getOrDefault(key, 0) + 1);
}
return counts;
}
def frequencies(items) -> dict:
counts = {}
for item in items:
key = key_of(item)
counts[key] = counts.get(key, 0) + 1
return counts
def frequencies(items: Iterable[Item]): Map[Key, Int] =
val counts = scala.collection.mutable.Map[Key, Int]().withDefaultValue(0)
for item <- items do
val key = keyOf(item)
counts(key) += 1
counts.toMap
std::unordered_map<Key, int> frequencies(const std::vector<Item>& items) {
std::unordered_map<Key, int> counts;
for (const Item& item : items) {
counts[keyOf(item)]++;
}
return counts;
}