java 快速排序的思想及解釋說明

2021-07-16 16:49:12 字數 808 閱讀 9143

快速排序在應用上很廣泛,大家有知道二分法,二分法在排好序的陣列中查詢資料是最快的

快速排序是在無序的陣列中排序、查詢相對是最快的

如今大資料時代,在資料量如此之大的情況下查詢的速度是很重要的,那麼認識快速排序的思想是很重要的,

快速排序的第乙個思想:二分思想

就是把乙個整體分成2份,每份單獨處理,這樣在查詢資料時則非常快,

比如開始是 5 1 6 2 7 3 9 4

我們已5為基數劃分

結果:4 1 3 257 6 9   

我們查詢的時候就知道從哪邊找啦,節約了大量的時間

快速排序的第二個思想:分而治之的思想

就是將乙個整體分為若干個部分,再理由遞迴依次處理,假如有多個程序處理速度更快

這也是大資料處理的思想

**如下:

public class kuaipai {

public static void quicksort(int a, int left, int right){

int i,j,t,temp;

if(left>right)

return;

temp=a[left]; //temp中存的就是基準數

i=left; //左哨兵

j=right; //右哨兵

while(i!=j)

{ //順序很重要,要先從右邊開始找

while(a[j]>=temp && i

快速排序思想及Java實現

首先從後往前找,找到乙個比基準值小的數之後,停下來,與基準值交換 然後又從前往後找,找到乙個比基準值大的值,停下來,接著與基準值交換 直到,所有的數遍歷完畢,及左右陣列座標相等,則將基準值填入之前定義的座標中 即 陣列被分為左右兩個區間,接下來用遞迴對左右區間進行排序 public class ne...

快速排序思想及C 實現

ste p1.step 1.step1.通過一趟排序把資料分成兩部分,其 中 color 其中一部分的所有資料都要比另一部分的所有資料小,基準資料 稱為樞軸 排在這兩個子串行的中間 s te p2.step 2.step2.對這兩個子串行遞 歸 color 遞迴地呼叫排序演算法 int partit...

(公升序)快速排序的思想

快速排序具體可以分為兩塊部分 踢與分。踢 將線性佇列中的某個元素a 一般是開頭的元素 由兩端往中間比較,為它選擇合適的位置,達成佇列中a元素的左側的元素的值小於a元素值,右側的元的素值大於a元素值。由此,確定了a元素在公升序線性表中的位置就確定了下來。分 線性表中a元素的位置確定,接下來對a元素左側...