Java教程

每日一题 LeetCode414. 第三大的数 java题解

本文主要是介绍每日一题 LeetCode414. 第三大的数 java题解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

https://leetcode-cn.com/problems/third-maximum-number/

class Solution {
    public int thirdMax(int[] nums) {
        TreeSet<Integer> s = new TreeSet<Integer>();
        for (int num : nums) {
            s.add(num);
            if (s.size() > 3) {
                s.remove(s.first());
            }
        }
        return s.size() == 3 ? s.first() : s.last();
    }
}
class Solution {
    public int thirdMax(int[] nums) {
        long a=Long.MIN_VALUE;
        long b=Long.MIN_VALUE;
        long c=Long.MIN_VALUE;
        for(int num:nums){
            if(num>a){
                c=b;
                b=a;
                a=num;
            }
            else if(a>num&&num>b){
                c=b;
                b=num;
            }
            else if(b>num&&num>c){
                c=num;
            }
        }
        return c==Long.MIN_VALUE?(int)a:(int)c;
    }
}
这篇关于每日一题 LeetCode414. 第三大的数 java题解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!