方案
1.优先队列
2.TreeMap
3.TreeSet
代码
/*
优先队列
取最大值即取出队头的值q.peek()即可
但是无法修改其中元素数值
*/
PriorityQueue<Integer> q = new PriorityQueue<Integer>((a, b) -> b - a);
/*
TreeMap
其键值key按照升序排列,可以用于有重复值且有修改问题的结构
firstKey为最小值
lastKey为最大值
*/
TreeMap<Integer,Integer> treeeMap = new TreeMap<>();
/*
TreeSet
其值按照升序排列,可以用于无重复值且有修改问题的结构
first为最小值
last为最大值
*/
TreeSet<Integer> set = new TreeSet<>();