是否有按频率顺序重复的“列表”实现?

例如 :

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/

10-12 00:24
查看更多