题目要求:找到一个数组中的第三大的不重复的数,如果第三大的数不存在就返回最大数。
问题解答:用了STL中的set容器,利用了set的去重和自动排序功能。
class Solution {
public:
int thirdMax(vector<int>& nums) {
int l=nums.size();
set<int,greater<int>> s;//使s按照从大到小的顺序排列
for(int i=0;i<l;i++){
s.insert(nums[i]);
}//利用set的去重和自动排序功能
set<int>::iterator ite=s.begin();
if(s.size()>=3){
ite++;
ite++;
}
return *ite;
}
};