题目

类型:Array

image.png

解题思路

set 去重,用来放三个数字,每次满了就删掉最小的,如果最后set 长度不到3就取最大的,否则取最小的

代码

  1. public int thirdMax(int[] nums) {
  2. TreeSet<Integer> s = new TreeSet<>();
  3. for (int num : nums) {
  4. s.add(num);
  5. if (s.size() > 3) {
  6. s.remove(s.first());
  7. }
  8. }
  9. return s.size() == 3 ? s.first() : s.last();
  10. }