如何在Java的TreeMap中检索具有最大值的键?

Spi*_*Man 6 java treemap

我有一个树图声明如下:

TreeMap<Integer, Integer> tree = new TreeMap<Integer, Integer>();
Run Code Online (Sandbox Code Playgroud)

如何检索具有最大值的密钥。是否有O(1)方法来实现这一目标。我知道可以在O(1)时间内从TreeMap中检索最大和最小键,如下所示:

int maxKey = tree.lastEntry().getKey();
int minKey = tree.firstEntry().getKey();
Run Code Online (Sandbox Code Playgroud)

感谢帮助。

Pet*_*rey 7

集合不是按值排序的,所以唯一的方法是蛮力 O(n),除非有另一个集合可以使用反向映射。

Map<Integer, Integer>map = new TreeMap<>();
int max = map.values().stream().max(Integer::compare).get();
Run Code Online (Sandbox Code Playgroud)