简单排序,以及求最大值,次最大值
作者:互联网
1 /* 2 对n个记录进行n-1简单选择排序 3 在无序区【i,n-1】选取最小记录,设其下标为index 4 将最小记录与第i个记录进行交换 5 */ 6 7 8 // 简单选择排序算法 9 10 void selectsort(int p[],int n){ 11 for(int i=0;i<n-1;i++){ 12 int temp,index; 13 index=i; 14 for(int j=i+1;j<n;j++){ 15 if(p[index]>p[j]) 16 index=j; 17 } 18 19 if(index!=i){ 20 temp=p[index]; 21 p[index]=p[i]; 22 p[i]=temp; 23 } 24 } 25 }1. 简答选择排序
1 /* 2 1.将前两个元素进行比较,较大者放到max中,较小者放到nmax中 3 4 2.从第3个元素开始直到最后一个元素依次取元素 A[i], 执行下列操作 5 2.1 如果A[i]>max, 则A[i]为最大值,原来的最大值为次最大值 6 2.2 否则,如果A[i]>nmax, 则最大值不变,A[i]为次最小值 7 8 3.输出最大值max,次最大值为inmax 9 */ 10 void max_nextmax(int p[],int &max,int &nmax,int n){ // 11 12 if(p[0]>=p[1]){ //前两个元素进行比较 13 max=p[0]; 14 nmax=p[1]; 15 } 16 else{ 17 max=p[1]; 18 nmax=p[0]; 19 } 20 for(int i=2;i<n;i++){ 21 if(p[i]>=max){ 22 nmax=max; 23 max=p[i]; 24 } 25 else if(p[i]>nmax){ 26 nmax=p[i]; 27 } 28 } 29 }2. 找出整型数组A[n]中元素的最大值和次最大值
标签:nmax,index,int,max,最大值,元素,简单,排序 来源: https://www.cnblogs.com/xiaochunzhang/p/15511819.html