/*
5 4 3 2 1
第0輪:4 5 3 2 1
4 3 5 2 1
4 3 2 5 1
4 3 2 1 5
比較4次
第1輪:3 4 2 1 5
3 2 4 1 5
3 2 1 4 5
比較3次
第2輪:2 3 1 4 5
2 1 3 4 5
比較2次
第3輪:1 2 3 4 5
比較1次
一共比較了多少輪?= 長度-1-1
`注意 :實際中應為寫雙層for迴圈時一般是以int i = 0;開始,所以輪數一般寫為: i < length - 1
//求出長度
int length = sizeof(nums)/sizeof(int);
//遍歷
for(int i = 0;
i < length - 1
;i++){}
如果 i <= length,那麼 輪數的控制就要寫為 i <=length - 1 - 1
每輪比較的次數 = 長度 - 輪數 - 1
*/#include
int main(int argc, const
char * argv) ;
int nums = ;
int len = sizeof(nums) / sizeof(int);
for (int i=0; i
printf("%d\n",nums[i]);
}printf("-------以上是交換之前--------\n");
for (int i=0; i<= len-1-1; i++) }}
for (int i=0; i
printf("%d\n",nums[i]);
}return 0;
}
排序 氣泡排序及其優化
氣泡排序算是初學者都會寫的吧,我的 竟然沒有,這次就跟著排序一起發出來吧!3.氣泡排序優化 氣泡排序 void bubblesort 1 int array,int size 2.1 優化方案void bubblesort 1 int array,int size if ischange retur...
氣泡排序及其改進
1.排序思想 氣泡排序也是非常簡單的排序演算法,易於理解。要點 1 也把陣列看作有序和無序部分,初始時將整個陣列視為無序 2 每次遍歷陣列中的無序部分,且兩兩比較,並將兩者中較大的元素置於後面一位,則一趟遍歷完成後,最大元素自然 沉到 無序部分的最後一位 3 減小無序部分的長度,迴圈第二步,直到陣列...
氣泡排序及其改進
氣泡排序作為最經典的演算法,雖然對大資料無用武之地。但是對於少量的資料,我們用氣泡排序,在時間複雜度上也是可以接受的,又因為它實現起來比較簡單,所以也經常的被人們使用。並且可以通過一些方法來改進最原始的氣泡排序,這種改進演算法的思路也有可取之處。前一兩天參加宜搜科技的筆試,就考到了氣泡排序。我當時就...