C 實現氣泡排序與插入排序

2021-06-15 10:27:26 字數 518 閱讀 6585

1.氣泡排序

排序原則:設陣列的長度為n,則要進行n-1趟排序,每次排序都會把最大的數推向最後。如果在一趟排序中沒有元素移動,則排序終止。

排序方法:在第 i 趟排序中,對前 n-i+1 個元素進行排序:從左邊開始每兩個元素順序進行比較,如果右邊的元素比左邊大,則交換兩者的位置。

具體實現如下:

static void maopao(int a)}}

}

2.插入排序

排序原則:初始時認為第乙個記錄已排好序,而除了第乙個以外的所有剩餘記錄構成了待排序記錄序列;從待排序序列中取出第乙個記錄,與已排序序列進行比較,插入到已排好序的序列中,重複進行操作。

排序方法:在將待排序序列中的記錄與已排好序序列進行比較時,如果該記錄大於已排好序最右邊序列,則不移動,否則依次向左移動,直到該記錄比前一記錄大為止。

具體實現如下:

static void insertsort(int a)}}

}

插入排序與氣泡排序 C 實現

插入排序與氣泡排序都是時間複雜度為o n 且為原地排序的排序演算法,在大量的資料下,插入排序比氣泡排序效率更高。因為氣泡排序的資料比較次數很難因為資料原因發生改變,而插入排序會因為資料的有序程度發生改變資料比較次數 include include using namespace std void m...

氣泡排序與插入排序

氣泡排序 void bubblesort int a,int n if flag 0 注意 1 每一趟通過比較相鄰兩個數的大小,最後實現最大的數放在最後面 插入排序 void insertionsort int a,int n a p temp 注意 1 比如10 9 8,假設手上拿的牌是10,需要...

氣泡排序與插入排序

氣泡排序 bubble sort 也是一種簡單直觀的 排序演算法 它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來.這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。插入排序 插入排序是一種最簡單直觀的排序演算法,它的工作原理是通過構建有序序列,對...