各種排序演算法和查詢演算法

2021-07-10 10:01:52 字數 760 閱讀 6884

自己實現了一遍氣泡排序、選擇排序、插入排序,留個念想

氣泡排序

簡單來說就是從陣列末端冒泡到陣列當前位置

void bubblesort(unsigned char *data, unsigned short length)

} }}

選擇排序

當前位置之後的所有數跟當前位置的數比較,得到最小的數到當前位置

void select_sort(unsigned char *data, int length)

if (min != i)

}}

插入排序

當前位置以下挪出乙個適合的位置來放當前位置資料

void insert_sort(unsigned char *data, int length)

data[j] = min;

}}

折半查詢

int bi_find(unsigned char n, unsigned char *data, int length)

else if (data[mid] < n)

min = mid+1;

else if (data[mid]>n)

max = mid-1;

mid = (min + max) / 2;

} return ret;

}

各種排序與查詢演算法

include include include define swap a,b intorder find int arr,size t len,int key return 1 int binary find int arr,size t l,size t r,int key intbinary ...

排序演算法和查詢演算法

法是用來解決常見問題的方法 同乙個問題可以採用多種方法解決,不同 方法適用於不同的環境 排序指的是把一組數字按照某種順序排列好 排序演算法分很多次重複執行,每次負責把 乙個數字放在合適的位置上 為了實現以上效果可以先確定數字然後查詢 位置也可以先確定位置然後查詢數字 通過不斷調整兩個數字的相互順序最...

各種排序演算法

交換函式 void swap int a,int b 氣泡排序 氣泡排序 bubble sort,台灣譯為 泡沫排序或氣泡排序 是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排...