一:氣泡排序:
#include#includevoid bubble_sort(int *arr,int len)
} if(flag)//如果一趟走完flag為1,說明內部沒有發生交換。證明後面的數字已經有序,直接跳出
mark=n;//將下標賦給mark,減少下次內部迴圈的次數,提高效率 }}
int main()
; int len=sizeof(arr)/sizeof(arr[0]);
int i=0;
bubble_sort(arr,len);
for(i=0;i#includevoid selection_sort(int *arr,int len)
for(i=0;i#includevoid direct_insertion_sort(int *arr,int len)
arr[j+1]=tmp;//a[i]插入適當位置 }}
int main()
; int len=sizeof(arr)/sizeof(arr[0]);
int i=0;
direct_insertion_sort(arr,len);
for(i=0;ireturn 0;
}
冒泡 選擇 插入三種排序
工作閒下來了,偶來學習下排序演算法的思想,適當的緩解下壓力,換個思考方式也很不錯的。氣泡排序 是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為...
冒泡 插入 選擇 三種排序
一 氣泡排序 演算法思路 兩兩比較相鄰記錄之間關鍵字,如果反序則交換,直到沒有反序的記錄為止。具體 import random data n int raw input for re in range 0,n a random.randint 1,1000 data re a print data ...
三種簡單排序 冒泡 選擇 插入
include using namespace std 簡單排序 平均時間複雜度都是o n方 級別。包括 氣泡排序 插入排序 選擇排序 說明 實現的演算法都是公升序排序。void swap int e1,int e2 氣泡排序 穩定 重複地走訪過要排序的元素列,一次比較兩個相鄰的元素,如果他們的順序...