插入排序法與簡單選擇排序法

2021-08-15 16:54:37 字數 845 閱讀 9632

written by 

robert_wang 

in southwest university of science and technology.

插入排序法:

插入排序就像玩撲克一樣,先找到第一張牌,拿起第二張牌的時候就要進行比較,如果比第一張小,則交換,反之,放在右邊不做處理。

我們用程式來解決的話,用兩重迴圈,內層負責對目標牌前面所有元素進行檢索,如果比目標牌大,則往後摞,當遇到比目標值小的就停下來,在將目標值插入。

#includeusing namespace std;

int main()

//插入排序法

int j;

int temp;

for(i=1; i=0 && a[j]>temp)//預設從小到大排序

a[j+1] = temp;

} int isfirst = 1;//用它來控制兩個數之間乙個空格

for(i=0; i插入排序演算法的時間複雜度為o(n^2)

選擇排序法:

我們用程式來解決的話,用兩重迴圈,內層負責找到目標牌後面所有元素的最小值,與目標牌進行比較,

如果比目標牌小,則交換,反之,放在右邊不做處理。

#includeusing namespace std;

int main()

int temp;

//選擇排序法

for(i=0; i} if(k!=i)

} int isfirst = 1;//用它來控制兩個數之間乙個空格

for(i=0; ielse

}cout<}

選擇排序演算法的時間複雜度為o(n^2)

氣泡排序法 選擇排序法 插入排序法

一貫作風,不說廢話,走起 test public void test1 輸出每一步的排序結果 system.out.print 第 i 次的排序結果為 for int num arr system.out.println 換行 選擇排序 param arr 需排序的陣列 public void se...

C 氣泡排序法 插入排序法 選擇排序法

是陣列等線性排列的數字從大到小或從小到大排序。以從小到大排序為例。資料 11,35,39,30,7,36,22,13,1,38,26,18,12,5,45,32,6,21,42,23 使用 陣列 int array 儲存數字。過程 陣列從小到大排序 思路迴圈都把最大的數放在最後一位,無序數字個數減1...

插入排序與簡單選擇排序的理解

簡單選擇排序,核心在於每一次迴圈中找到最小的位置,根據位置的相等關係來決定是否進行元素的交換。採用兩層迴圈,第一層迴圈從第乙個元素遍歷到倒數第二個元素,第二個元素從第一層迴圈的當前元素開始遍歷到最後乙個元素,在內層迴圈中進行元素和第一層當前元素進行比較,根據比較的結果來更新最小值或者最大值,然後判斷...