是否有按频率顺序重复的“列表”实现?
例如 :
TreeSet<String> cities = new TreeSet<String>();
cities.add("NYC"); // Ordered list is [NYC]
cities.add("Boston"); // Ordered list is [Boston, NYC] (alphabetical order)
cities.add("NYC"); // Ordered list is [NYC, Boston] because NYC was added twice
cities.add("Philly");
cities.add("Philly");
cities.add("Philly"); // Ordered list is now [Philly, NYC, Boston]
最佳答案
这对于基本的JDK来说很棘手,并且不能与纯Set
一起使用,但是如果第三方库是公平的游戏,则可以使用Guava's Multiset
。方法Multisets.copyHighestCountFirst
通过每个元素的出现次数对给定的多集进行排序。
关于java - Java按频率重复列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30852573/