今天就跟大家聊聊有關(guān)怎么在Java項目中利用QuickSort實現(xiàn)一個快速排序功能,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
快速排序
----------------------------------------------------------------------
思想
如上圖:每趟快速排序開始時,設(shè)置一個key,key=array[low],然后由high向左,找到小于key的值,復(fù)制到low位置,然后再由low向右找到大于key的值,復(fù)制到high位置,直到low=high結(jié)束,
將key的復(fù)制到low位置。
上圖中第一輪劃分后找到32的位置,然后遞歸的對32左邊和右邊的進行排序。
代碼:
package Sort; import java.util.Arrays; public class QuickSort { public static void main(String[] args) { int array[]={32, 12, 7, 78, 23, 45}; quickSort(array,0,array.length-1); System.out.println(Arrays.toString(array)); } public static void quickSort(int array[],int left,int right) { if(left>=right) { return ; } int i=left; int j=right; int key=array[left]; while(ikey) { j--; } array[i]=array[j]; //從后往前找到第一個比key小的數(shù)與array[i]交換; while(i
文章題目:怎么在Java項目中利用QuickSort實現(xiàn)一個快速排序功能-創(chuàng)新互聯(lián)
文章路徑:http://weahome.cn/article/gphoc.html