遞迴實現快速排序

2021-10-11 02:36:04 字數 1362 閱讀 6443

所有查詢中hash查詢效率最高,在所有排序中,快速排序的效率也是最高的。

採用遞迴函式的方法來實現快速排序!

**

#include

#include

#include

intquick_sort

(int*,

int,

int)

;int

partion

(int*,

int,

int)

;int

main

(int argc,

const

char

* ar**)

printf

("the rand num is:");

for(i =

0; i < n; i++

)puts(""

);quick_sort

(num,

0, n-1)

;printf

("quick_sort num :");

for(i =

0; i < n; i++

)puts(""

);free

(num)

;return0;

}int

quick_sort

(int

*num,

int low,

int hight)

if(low >= hight)

return0;

i =partion

(num, low, hight)

;//拆分操作

quick_sort

(num,

0, i -1)

;//左區間排序

quick_sort

(num, i +

1, hight)

;//右區間排序

return0;

}int

partion

(int

*num,

int low,

int hight)

num[low]

= num[hight]

;//找到要交換的就之間交換

while

((low < hight)

&&(tmp >= num[low]))

num[hight]

= num[low]

;}

num[low]

= tmp;

//low hight重合的時候就是說基準值的位置

return low;

//返回基準值的最終位置

}

快速排序 遞迴實現

快速排序演算法 用到了 分治法 遞迴演算法 package com.xiahui public class quicksort quicksort quicksort new quicksort quicksort.quicksort a,0,6 for int i 0 i a.length i p...

快速排序 遞迴實現

快速排序演算法 用到了 分治法 遞迴演算法 package com.xiahui public class quicksort quicksort quicksort new quicksort quicksort.quicksort a,0,6 for int i 0 i a.length i p...

遞迴實現快速排序

include include include int r 20001 void main qk 1,n printf n 以上 d個整數從小到大排序為 n n for i 1 i n i printf d r i 輸出排序結果 printf n void qk int m1,int m2 快速排序...