查找第二大的元素

给定一个数组,找出第二大的元素

#include <iostream>
#include <set>
using namespace std;

int find_sec_max(int a[],int n);
int main()
{
	int aa[]={9,4,6,7,56,76,57,65,47,95,41,85,462,365,984,58,48,465,265,49,84,85,49,8};
	int sec_max=find_sec_max(aa,sizeof(aa)/sizeof(int));
	cout<<"sec_max="<<sec_max<<endl;
	return 0;
}

int find_sec_max(int a[] ,int n)
{
	set<int> myset;
	for(int i=0;i<n;i++)
	{
		myset.emplace(a[i]);
	}
	auto it=myset.end();
	--it;
	--it;
	return *it;
}

猜你喜欢

转载自blog.csdn.net/Namcodream521/article/details/81097929