У меня просто есть реализация карты ниже, чтобы отсортировать значения в порядке убывания, и я использовал реализацию ниже.
public static Map<String,Integer> sortByComparator(Map<String,Integer> unsortMap) {
List list = new LinkedList(unsortMap.entrySet());
//sort list based on comparator
Collections.sort(list, new Comparator() {
public int compare(Object o1, Object o2) {
return ((Comparable) ((Map.Entry) (o2)).getValue())
.compareTo(((Map.Entry) (o1)).getValue());
}
});
//put sorted list into map again
Map sortedMap = new LinkedHashMap();
for (Iterator it = list.iterator(); it.hasNext();) {
Map.Entry entry = (Map.Entry)it.next();
sortedMap.put(entry.getKey(), entry.getValue());
}
return sortedMap;
}
Это выполняет необходимые функции. Но мне любопытно узнать, смогу ли я использовать карту дерева для сортировки по убыванию.