您的位置:首页 > 其它

给定一个未排序的数组,返回是否存在一个长度为3的递增子序列或不在数组中。

2017-11-24 11:14 423 查看
本题源自leetcode

-------------------------------------------------

思路 : 1 设置俩个标志值 c1,c2都为最大值。

2  遍历数组 每一次都与c1,c2 比较如果比c1 小就把c1 设为这个值。否则就与c2 比。如果比c2小,就赋值给c2否则就存在递增子序列。

代码;

bool increasingTriplet(vector<int>& nums) {
if(nums.size()<3)
return false;
int c1=INT_MAX;
int c2=INT_MAX;
for(int i=0;i<nums.size();i++){
if(nums[i]<=c1){
c1=nums[i];
}else if(nums[i]<=c2){
c2=nums[i];
}else{
return true;
}
}
return false;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐