C/C++求给定数组的次大值

int subMax(int a[],int n)
{
  int max=a[0];
  int sub_max=a[0];
 
  for (int i = 1; i < n; i++)
  {
    if(a[i]>max)
    {
      //update max and sub max
      sub_max=max;
      max=a[i];
    }
    else if(a[i]<max)
    {
      if(a[i]>sub_max)
      {//update sub max
        sub_max=a[i];
      }
    }
    else
    {
      //do nothing
    }
  }
 
  return sub_max;
}

  

posted @ 2020-10-23 11:13  无极至上  阅读(386)  评论(0编辑  收藏  举报