找出数组中倒数第二小的数
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int findSecondSmall(vector<int> arr,int len)
{
if(arr.size()==0|| len<2) return 0xffffffff;
int min=arr[0]; //第一小的
int second=arr[1];//第二小的
if(min>second){
min=arr[1]; //最小的
second=arr[0];//第二小的
}
//从下标2开始遍历
for(int i=2;i<len;i++){
if(arr[i]<min){
second=min;
min=arr[i];
}else if(arr[i]<second){
second=arr[i];
}
}
return second;
}
int main(){
vector<int> arr={1,3,5,6,4};
int a=findSecondSmall(arr,arr.size());
cout<<a;
}