理解 氣泡排序 快速排序

2021-09-24 13:39:24 字數 2107 閱讀 1666

練習

second text hao long

**片.

;//建立乙個結構體,用來儲存姓名和分數

typedef student student;

intmain()

for(

int i =

0; i < num -

1; i++)}

}for

(int i =

0; i < num; i++

)getchar()

;getchar()

;//用來暫停程式,以便檢視程式輸出的內容,可用system("pause");等來代替

,n;//全域性變數

void quicksort (

int left,

int right)

cout << endl;*/

//測試輸出時所用

return;}

temp = a[left]

;//temp中存的就是基準數(和此數比較大小)

i = left;

j = right;

while

(i != j)}

a[left]

= a[i]

; a[i]

= temp;

//基準數歸位

/*cout << "testoutput: left: " << left << " right: " << right << endl;

for(int i = 0; i < n; i++)

cout << endl;*/

//測試輸出時所用

quicksort

(left,i -1)

;quicksort

(i +

1,right)

;//呼叫函式,分別排左右,這是乙個遞迴過程

}int

main()

quicksort(0

,n -1)

;for

(int i =

0; i < n; i++

) cout << endl;

getchar()

;getchar()

;return0;

}

run:

計算機的無腦與強大之處:(不管是否已經是最終結果,都會執行到底)

排序 氣泡排序 快速排序

快速排序 氣泡排序就是自上向下依次對比兩個數字,若上面的數字大於下面的數字,則兩者交換,否則不交換。這樣每次迴圈結束,未排序的最大的數就到了最下面。如陣列前兩次迴圈過程如下 快速排序的核心是partition 函式,其功能如下所示 34的位置找到後,其將陣列分成兩部分,前一部分都比34小,後一部分都...

排序 氣泡排序 快速排序

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 之前,則稱這種排序演算法是穩定的 否則稱為不穩定的。一 氣泡排序 氣泡排序的基本思想 每次比較...