使用三个辅助变量

数组中未出现的最小正整数

http://www.nowcoder.com/questionTerminal/8cc4f31432724b1f88201f7b721aa391

//最小值,最大值,以及第一个大于0的值
//遍历一遍数组,得到缺失的第一个正整数

class Solution {
public:

    int minNumberdisappered(vector<int>& arr) {
        int min=INT_MAX;
        int max=INT_MIN;
        int median=INT_MAX;
        for(int i=0;i<arr.size();i++){
            if(arr[i]<0 && arr[i]<min)
                min=arr[i];

            if(arr[i]>0 && arr[i]<median)
                median=arr[i]; 
            else if(arr[i]>0 && arr[i]>max)
                max=arr[i];
        }
        if(min<0)
            return median-1;
        else 
            return max+1;
    }
};
全部评论

相关推荐

最近拿到了正浩的提前批offer感觉自己的实力得到了肯定,也给了我更多底气
搞机墨镜猫:正浩提前批官网好像就只有电力电子软硬件,哥们投的是这两个岗位吗
26届校招投递进展
点赞 评论 收藏
分享
06-10 23:36
已编辑
首都经济贸易大学 C++
点赞 评论 收藏
分享
06-07 00:00
已编辑
腾讯_后端开发
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务