快速排序演算法C語言

2021-07-15 04:02:51 字數 517 閱讀 1313

快排的核心思想是分而治之,即第一步先選乙個參考數,第二步將小於參考數的數放左邊,大於該參考數的數放右邊,第三步分別對左邊部分的數和右邊部分的數再進行快排遞迴呼叫。

c語言**:

#include void quick_sort(int *a, int p, int r);

int partition(int *a, int p, int r);

void print_array(int *a, int length);

int main(void)

; print_array(a, 8);

quick_sort(a, 0, 7);

printf("after quick sort\n");

print_array(a, 8);

return 0;

}void print_array(int *a, int length)

for (i=0; i

快速排序演算法 C語言

參考文章 include include 隨機找出乙個數 通常就拿陣列第乙個資料就行 把它插入乙個位置,使得它左邊的數都比它小,它右邊的資料都比它大,這樣就將乙個陣列分成了兩個子陣列,然後再按照同樣的方法把子陣列再分成更小的子陣列,直到不能分解為止。它也是分治思想的乙個經典實驗 歸併排序也是 舉例說...

c語言快速排序演算法

每次排序的時候設定乙個基準點,將小於等於基準點的數全部放到基準點的左邊,將大於等於基準點的數全部放到基準點的右邊。includevoid quicksort int a,int left,int right int temp a left temp就是基準 int i left int j righ...

快速排序演算法 C語言

快速排序演算法 c語言 include include void display int array,int high printf n int fast sort int array,int i,int j 迴圈結束,若iif i 隊首元素大於基準資料則繼續迴圈 while i key 迴圈結束,...