我正在尝试创建一个树Map,它按值对已创建的Map进行排序。我现在的代码是:
public static TreeMap<String, Integer> sortedMap(Map<String, Integer> map)
{
TreeMap<String, Integer> freq = new TreeMap<>(new Comparator<String>() {
@Override
public int compare(String s1, String s2)
{
return map.get(s1) >= map.get(s2) ? -1 : 1;
}
});
freq.putAll(map);
return freq;
}
然而,据我所知,这将有一个时间复杂度约为o(n2),并想看看我是否可以使用像合并排序或只是一个因素的方式来排序Map。
1条答案
按热度按时间wbgh16ku1#
你可以用
HashMap
降低通话成本Comparator
.和
输出: