您当前的位置: 首页 >  c++

令狐掌门

暂无认证

  • 2浏览

    0关注

    513博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

如何找出数组中第二大数(C++版)

令狐掌门 发布时间:2020-02-12 10:15:09 ,浏览量:2

题目:

       不排序,找出数组中的第二大数。

代码如下:

/*

找出数组中的第二大数

*/

#include 
#include 

using namespace std;

class Solution{
public:
    int getSecond(vector arr) {
        int size = arr.size();
        if (size < 2) {
            return -INT32_MAX;
        }

        int max = arr[0];
        int second = -INT32_MAX;

        for (int i = 1; i < size; i++) {
            if (arr[i] > max) {
                second = max;
                max = arr[i];
            }
            else if (arr[i] < max && arr[i] > second) {
                second = arr[i];
            }
        }

        return second;
    }
};

int main(){
    vector arr{ 2, 1, 5, 4, 6, 3, 7 };
    //vector arr{ 2, 1};
    //vector arr{ 2 };
    Solution s;

    cout             
关注
打赏
1652240117
查看更多评论
0.0374s