選擇排序和氣泡排序

2021-08-04 13:11:28 字數 1016 閱讀 7915

//直接選擇排序

public

class

demo ;

intindex;

for(int i = 0; i < a.length -1; i++)

int temp = a[a.length - i -1];//要交換的最後一數

a[a.length - i -1] = a[index];

a[index] = temp;

}//輸出:

for(int k : a)

}}/*

原數:20,3,69,7,32

原理:將第乙個元素與後面的元素比較,若第乙個元素比後面任何乙個數都要大。

就與最後乙個元素交換位置。第二輪將剩下的數比較,重複以上操作、

第一輪:

20,3,32,7,69

第二輪:

20,3,7,32,69

第三輪:

7,3,20,32,69

第四輪:

3,7,20,32,69

輸出:3 7 20 32 69

//氣泡排序

/*1.比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。

2.對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。

3.針對所有的元素重複以上的步驟,除了最後乙個。

4.持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較

*/public

class demo1 ;

for(int i = 0; i < a.length - 1; i++)}}

for(int k : a)}}

輸出:

1 3 4 15 24 63

排序 氣泡排序和選擇排序

目錄 氣泡排序 氣泡排序原理圖 demo 執行 選擇排序 氣泡排序原理圖 demo 執行 說明 include include using namespace std name 氣泡排序法 number 傳入陣列 length 陣列長度 setw 需要匯入 include ps 這是乙個lib.h的...

選擇排序和氣泡排序

選擇排序和氣泡排序 演算法 蠻力法選擇排序,第一次掃瞄整個陣列,找到最小元素,然後和第乙個元素交換。第二次從第二個元素開始掃瞄陣列,找到剩下的元素中最小的與第二個元素交換位置,直到最後。89 45 68 90 29 3417 17 45 68 902934 89 17 29 68 90 453489...

選擇排序和氣泡排序

選擇 從小到大排序 int a 5 a 0 a 1 a 2 a 3 a 4 5 4 3 2 1 1 5 4 3 2 第一輪比較 拿a 0 和後面的元素依次比較 如果a 0 a i 那麼兩個數交換 1 2 5 4 3 第二輪比較,拿a 1 和後面的元素依次比較,如果a 1 a i 那麼兩個數交換 1 ...