氣泡排序簡單的思路:
例如一串簡單無序的數字:2,1,9,5,6,7,8,0,3,4————10個數
我們需要按照公升序的方法排列:
2先和1比較,結果為1,2,9,5,6,7,8,0,3,4
2和9比較,結果為1,2,9,5,6,7,8,0,3,4
9和5比較,結果為1,2,5,9,6,7,8,0,3,4
…9和4比較,結果為1,2,5,6,7,8,0,3,4,9
上面的過程稱為一趟比較。
仔細想想,10個元素,需要9趟
模擬n,n個元素,需要n-1趟
再者,第一趟,9對比較,第二趟,8對比較……第9趟,1對比較
下面是**:
#include
void
bubble_sort
(int arr,
int sz)}if
(flag ==1)
}}intmain()
;int sz =
sizeof
(arr)
/sizeof
(arr[0]
);//對arr進行公升序排列
//arr是陣列,對arr進行傳參,實際上傳遞的是陣列首元素的位址 &arr[0]
bubble_sort
(arr,sz)
;//氣泡排序函式
for(i =
0; i < sz; i++
)return0;
}
氣泡排序(初級版)之C 實現
氣泡排序 初級版 之c 實現 一 源 bubblesortlow.cpp 1 氣泡排序思想 2從第乙個元素開始,對陣列中兩兩相鄰的元素比較,將值較小的元素放在前面,值較大的元素放在後面 3一輪比較完畢,乙個最大的數沉底成為陣列中的最後乙個元素,一些較小的數如同氣泡一樣上浮乙個位置。4n個數,經過n ...
C語言 氣泡排序法
此題的解決思路為 對於一組數字的排序,我們通過迴圈比較兩個相鄰元素的大小,若為公升序排列則將最大值替換到最後。這樣依次類推進行多趟氣泡排序即可將這組數字公升序排列。例如 10,9,8,7,6,5,4,3,2,1 通過一趟氣泡排序,我們將10置於最後一位。9,8,7,6,5,4,3,2,1,10 第二...
C語言 氣泡排序法
氣泡排序法 排序的規律有兩種 一種是公升序,從小到大 另一種是降序,從大到小。排序方法是一種很重要的,基本的演算法。冒泡法的基本思路是 每次將相鄰的兩個數比較,將小的調到前面,讓最大的元素不斷地往後移。例 有6個數 9,8,5,4,2,0 第一次對調情況如下圖,可以看到將最大的數字9調到了最後,經過...