//第二大數(第k大數)
阿新 • • 發佈:2019-01-24
//第二大數
int get_maxnum(int *A,int n)//得到最大值
{
for(int i=0;i<n-1;i++)//一趟冒泡
if(A[i]>A[i+1])
swap(A[i],A[i+1]);
return A[n-1];//返回最大值
}
void Solution(int *A,int n)
{
int maxnum=get_maxnum(A,n);
int i=1;
int nextnum=get_maxnum(A,n-1);
for(;;)
{
if(nextnum!=maxnum)//判斷是否與最大數相同
{
cout<<nextnum<<endl;
break;
}
else
{
nextnum=get_maxnum(A,++i);//遞迴
}
}
}