栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++实现从数组中同时取出最大最小元素算法示例

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++实现从数组中同时取出最大最小元素算法示例

本文实例讲述了C++实现从数组中同时取出最大最小元素的方法。分享给大家供大家参考,具体如下:

算法思想:先相邻两个两个比较,较大的放入数组max[],较小的放入数组min[],然后从max[]数组求出最大,min[]数组求出最小即可。

比较n+[(n+1)/2] =1.5n次

#include 
#define n 11
#define m ((n+1)/2)
using namespace std;
void main(void)
{
  int num[] = {11,2,3,4,6,5,7,8,9,10,20};
  //int n = sizeof(num)/sizeof(num[0]);
  //int m = (n+1)/2;
  int max[m] , min[m];
  int k = 0, j = 0;
  if(n/2 != 0) max[m-1] = min[m-1] = num[n-1];
  for (int i=0; i < n-1; i = i+2)
  {
    if (num[i] >= num[i+1])
    {
      max[j++] = num[i];
      min[k++] = num[i+1];
    }
    else
    {
      max[j++] = num[i+1];
      min[k++] = num[i];
    }
  }
  for( i=0; i< m; i++)
  {
    cout << "max[" << i << "] = " << max[i] << "t";
    cout << "min[" << i << "] = " << min[i] < MAX) MAX = max[j];
    if (min[j] < MIN) MIN = min[j];
  }
  cout << "MAX = " << MAX << ", MIN = " << MIN <

希望本文所述对大家C++程序设计有所帮助。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/63252.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号