2016-11-11
#include <iostream> #include<stdlib.h> #include<stdio.h> using namespace std; void findmaxmin(int num[],int len,int &dmax ,int &dmin) { int max=0; int min=625;//假设没有比625大的; for(int i=0;i<len;i=i+2) { if(num[i]>num[i+1]) { if(num[i]>max) { max=num[i]; } if(num[i+1]<min) { min=num[i+1]; } } else{ if(num[i+1]>max) { max=num[i+1]; } if(num[i]<min) { min=num[i]; } } } dmax=max; dmin=min; } int main() { int s[10]={1,3,42,54,2,54,6,87,22,10}; int len=10; int dmax,dmin; findmaxmin(s,len,dmax,dmin); cout<<dmax<<endl; cout<<dmin<<endl; return 0; }
写的有点乱,其实可以用 :?这个运算符吧,凑活看吧
每次取两个数,大小比较0.5len次。。。。大的比大的,小的比小的len次,共1.5len次