?#include <stdio.h>//冒泡排序,開始的時候兩個數進行比較,大的向后小的向前,第一次比較很容易的就把最大的一個數字放到了最后小的呢,繼續向前,第二次當然也找到了第二個大的,放到倒數第二的位置,如此下去便可。這個是優化的冒泡排序方法,讓k=j保存最后的那個數的下標,這樣k后面的數都是排序好的了,這個排序是穩定的,時間復雜度是N平方void main(){int array[10] = {1,2,11,22,33,4,23,234,4,6};int length = sizeof(array)/sizeof(array[0]);int k=0, s=0, i=0, j=0, m=0;//冒泡排序開始int a;for(a=0;a<=9;a++){ printf("%d \n",array[a]); }for(i = length-1;i>0;i=k){for(j=0, k=0;j<i;j++){if(array[j]>array[j+1])//把比較出來大的數據向后移動{m=array[j];array[j]=array[j+1];array[j+1]=m;k=j;}}}//冒泡排序結束,輸出顯示排序的結果for(s=0; s<length; s++){printf("%d\n",array[s]);}}
(1) 順序存儲數據,實現簡單選擇排序,并顯示每次排序過程中的序列;
慕函數6732512
2015-11-26 22:42:39