题目:
不排序,找出数组中的第二大数。
代码如下:
/*
找出数组中的第二大数
*/
#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
关注
打赏