Third Maximum Number
class Solution {
    public int thirdMax(int[] nums) { 
        Integer max1, max2, max3 ;
        max1 = max2 = max3 = null;
       for(Integer i : nums){
           
           if (i.equals(max1) || i.equals(max2) || i.equals(max3)) continue;
            
           if( max1 == null || i > max1){
                max3 = max2;
                max2 = max1;
                max1 = i;
            }
            else if( max2 == null || i > max2){
                max3 = max2;
                max2 = i;
            }
            else if(  max3 == null || i >= max3){
                max3 = i;
            }
        }
        if( max3 != null )
            return max3;
        else return max1;
    }
}
Comments (1)