
【解题思路】
先将nums数组从大到小排序,剔除重复的数据。在处理好的数组中,如果数组的大小小于3,返回最大的数;否则返回第三大的数。
class Solution {
public int thirdMax(int[] nums) {
Arrays.sort(nums);
int n = nums.length;
List<Integer> ans = new ArrayList<Integer>();
int num = 99999;
for(int i = 0; i < n; i++)
{
if(nums[i] != num)
{
ans.add(nums[i]);
num = nums[i];
}
}
if(ans.size() < 3) return ans.get(ans.size()-1);
else return ans.get(ans.size()-3);
}
}