冒泡法和选择排序法(比较容易写混)
Posted 菜鸟根据地
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了冒泡法和选择排序法(比较容易写混)相关的知识,希望对你有一定的参考价值。
1 #include<stdio.h> 2 3 4 //冒泡排序法 5 6 void bubbling(int a[],int n); 7 8 //选择排序法 9 void choose(int a[],int n); 10 int main() 11 { 12 int i; 13 int s[6]; 14 printf("please enter five numbers:\n"); 15 for(i=1;i<6;i++) 16 { 17 scanf("%d",&s[i]); 18 } 19 // bubbling(s,5); 20 choose(s,5); 21 printf("after number:\n"); 22 for(i=1;i<6;i++) 23 { 24 printf("%4d",s[i]); 25 } 26 printf("\n"); 27 } 28 29 void choose(int a[],int n) 30 { 31 int x,y; 32 int iTemp; 33 for(x=1;x<n;x++) 34 { 35 for(y=n;y>=x+1;y--)//前一个数和后一个数的比较。为选择排序法。 36 { 37 if(a[x]>a[y]) 38 { 39 iTemp=a[x]; 40 a[x]=a[y]; 41 a[y]=iTemp; 42 } 43 } 44 } 45 } 46 47 void bubbling(int a[],int n) 48 { 49 int i,j; 50 int iTemp; 51 for(i=1;i<n;i++) 52 { 53 for(j=i;j<n;j++) 54 { 55 if(a[j]>a[j+1])//每次两两比较,这才是冒泡法 56 { 57 iTemp=a[j]; 58 a[j]=a[j+1 ]; 59 a[j+1]=iTemp; 60 } 61 } 62 } 63 }
冒泡法是实现两两比较大小,然后实现最大最小在特定位置。
选择法是数列的一个数和奇然数字比较交换。
以上是关于冒泡法和选择排序法(比较容易写混)的主要内容,如果未能解决你的问题,请参考以下文章