题目
类型:Array
解题思路
set 去重,用来放三个数字,每次满了就删掉最小的,如果最后set 长度不到3就取最大的,否则取最小的
代码
public int thirdMax(int[] nums) {
TreeSet<Integer> s = new TreeSet<>();
for (int num : nums) {
s.add(num);
if (s.size() > 3) {
s.remove(s.first());
}
}
return s.size() == 3 ? s.first() : s.last();
}