排序 氣泡排序 快速排序

2021-09-25 19:49:56 字數 1367 閱讀 2093

快速排序

氣泡排序就是自上向下依次對比兩個數字,若上面的數字大於下面的數字,則兩者交換,否則不交換。這樣每次迴圈結束,未排序的最大的數就到了最下面。

如陣列前兩次迴圈過程如下:

}快速排序的核心是partition()函式,其功能如下所示:

34的位置找到後,其將陣列分成兩部分,前一部分都比34小,後一部分都比34大。則利用遞迴對著兩個子陣列執行partition()方法。

class

sort

;quicksort

(data,

0, data.length-1)

;for

(int x : data)

system.out.

print

(x+" ");

system.out.

println()

;}public

static

void

quicksort

(int

array,

int start,

int end)

}public

static

intpartition

(int

input,

int start,

int end)

return start;

}public

static

void

swap

(int

array,

int i,

int j)

}

排序 氣泡排序 快速排序

1 基本思想 將第乙個記錄的關鍵字與第二個記錄的關鍵字比較,若為逆序,則將兩個記錄交換,再向後比較。關鍵字小的漂浮,關鍵字大的下沉。2 穩定性 演算法穩定。3 時間複雜度 o n 空間複雜度 o 1 4 實現 include define n 5 陣列長度上限 intmain printf 氣泡排序...

排序(氣泡排序 快速排序

關於排序的穩定性 在待排序的記錄序列中,存在多個具有相同的關鍵字的記錄,若經過排序,這些記錄的相對次序保持不變,即在原序列中r i r j 且r i 在r j 之前,而在排序後的序列中,r i 仍在r j 之前,則稱這種排序演算法是穩定的 否則稱為不穩定的。一 氣泡排序 氣泡排序的基本思想 每次比較...

氣泡排序,快速排序

氣泡排序 氣泡排序 英語 bubble sort 是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。...