氣泡排序的思想很簡單,如果要求排序後序列中元素按照從小到大的順序排列,則氣泡排序的步驟如下:
1、依次比較序列中相鄰的兩個元素,將較大的放在後面,這樣一趟比較後,最大的元素就放在了最後的乙個位置;
2、再依次比較相鄰的兩個元素,將第二大的元素最終放到倒數第二個位置;
3、依次迴圈,直到最小的元素放在了第乙個位置,排序完成。
void bubble_sort(int *arr,int len)
}改進:
void bubble(int *arr,int len)
}}
直接選擇排序
直接選擇排序的思想也很簡單,以排序從小到大為例,如下:
1、從第乙個元素開始,選出乙個最小的元素與第乙個元素互換;
2、繼續從第二個元素開始,向後選出最小的元素,與第二個元素互換;
3、依次迴圈執行,直到最大的元素放在了最後乙個位置上,排序完成。
我們可以將第乙個元素分別與後面的元素進行比較,遇到更小的,就交換,這樣一趟比較下來,第乙個元素儲存就是最小值,而後再從第二個元素開似乎,依次與後面的元素比較,遇到更小的,就交換,這樣,第二趟比較下來,第二個元素儲存的就是第二小的值。。。依次迴圈執行,直到完成排序。
void select_sort(int *arr,int len)
}}改進:void select_sort(int *arr,int len)
}}
氣泡排序 選擇排序
這兩個排序的演算法 都是我從乙個叫太陽落雨的部落格上找來的,我放到我自己部落格,也只是為了把兩個排序演算法放一起方便,順便自己記憶,沒有抄襲的意思。一 演算法思想 氣泡排序便是指把陣列中的乙個數與其下乙個數進行比較,小的往前挪乙個位置,進行幾趟比較得到最終結果。而插入排序便是指先把第乙個數定為最小數...
選擇排序,氣泡排序
程式設計實現兩個排序演算法 選擇排序,氣泡排序 要求用函式實現排序演算法,主函式中呼叫。待排序資料用隨機數產生 這個過程建議也用乙個函式實現。include using namespace std include include 氣泡排序 void bubblesort int r,int n co...
氣泡排序 選擇排序
氣泡排序 它的內層迴圈保證遍歷一次後,集合中最小 大 元素出現在它的正確位置,下一次就是次小 大 元素。該方法在集合分布的各種情況下交換移動的次數基本不變,屬於最慢的一種排序。實現是雙重迴圈控制。這種排序法屬於過江龍,就是要找到極端,但是過獎龍也有大哥,二哥等,所以他們只能是大哥挑了二哥挑.處理 如...