您的位置:首页 > 其它

//第二大数(第k大数)

2016-03-06 10:06 218 查看
//第二大数

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);//递归
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: