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