C语言冒泡排序法则
1.冒泡原理
例子:從大到小排序1,-2,4,3,-5
主要是運用交換的原理,將大的換到前面,小的換到后面
2.代碼實現
#include <stdio.h>int main(){//從大到小排序int arr[]={1,-2,4,3,-5};int i;int t;//臨時變量for(i=0;i<4;i++){//第一輪交換if(arr[i] < arr[i+1]){t=arr[i];arr[i]=arr[i+1];arr[i+1]=t;}}printf("\n");for(i=0;i<5;i++){printf("%d ",arr[i]);}for(i=0;i<3;i++){//第二輪交換if(arr[i] < arr[i+1]){t=arr[i];arr[i]=arr[i+1];arr[i+1]=t;}}printf("\n");for(i=0;i<5;i++){printf("%d ",arr[i]);}for(i=0;i<2;i++){//第三輪交換if(arr[i] < arr[i+1]){t=arr[i];arr[i]=arr[i+1];arr[i+1]=t;}}printf("\n");for(i=0;i<5;i++){printf("%d ",arr[i]);}for(i=0;i<1;i++){//第四輪交換if(arr[i] < arr[i+1]){t=arr[i];arr[i]=arr[i+1];arr[i+1]=t;}}printf("\n");for(i=0;i<5;i++){printf("%d ",arr[i]);}printf("\n");return 0; }3.運行結果
3.代碼優化
#include <stdio.h> void bubbleSort(int arr[],int len){int i;int j;int t;//臨時變量for(i=0;i<len-1;i++){for(j=0;j<len-1-i;j++){if(arr[j] < arr[j+1]){t=arr[j];arr[j]=arr[j+1];arr[j+1]=t;}}}}int main(){//從大到小排序int arr[]={1,-2,4,3,-5,101,30,100,90};int i;int len=sizeof(arr)/sizeof(int);//數組個數bubbleSort(arr,len);for(i=0;i<len;i++){printf("%d ",arr[i]);}printf("\n");return 0; }4.運行結果
?
總結
- 上一篇: 高效制作期刊论文三线表格教程
- 下一篇: 数字图像处理 冈萨雷斯 (第四版) 比