快速排序的遞迴實現

2021-06-13 16:37:25 字數 632 閱讀 4252

當主元為陣列最後乙個元素時的實現:

package offer.giveme;

//實現演算法導論上的快速排序方法

public class quicksort {

public int partition(int num,int low,int high){

//分割方法,將陣列的最後乙個元素作為主元。

//low為當前需劃分子陣列的下界,high為上界

int i=low-1;

int j=low;//i為已經比較完成的小於主元的部分的右邊界,j指向待比較元素

int x=num[high];//主元

for(;j

主元為陣列第乙個元素時的實現:

package offer.giveme;

//實現當主元在第乙個元素時的快速排序

public class quicksort2 {

public int partition(int num,int low,int high){

int x=num[low];

int i=low;

int j=high;

while(i=x)

--j;

num[i]=num[j];

while(i

快速排序 遞迴實現

快速排序演算法 用到了 分治法 遞迴演算法 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...

遞迴實現快速排序

所有查詢中hash查詢效率最高,在所有排序中,快速排序的效率也是最高的。採用遞迴函式的方法來實現快速排序!include include include intquick sort int int,int int partion int int,int int main int argc,const...