資料結構複習 氣泡排序與快速排序

2021-10-03 06:35:34 字數 1057 閱讀 7164

氣泡排序c語言大家都學過,就不多說,說一下補充的部分。就是當當前的數不再發生交換時,就退出迴圈。這樣可以減少迴圈的次數。以及,氣泡排序是一種穩定的排序演算法

#include

using

namespace std;

intmain()

;int i=

0,j=

0,k=0;

int x;

int flag=0;

while

(flag==

1&&i<9)

} i++;}

for(k=

0;k<

10;k++

)printf

("%d\n"

,a[k]);

}

每一趟快速排序都會產生乙個中樞值,然後將中樞值的左右部分分別快速排序迭代。

一趟快速排序的過程:

1,將陣列第乙個值賦給中樞值;

2,初始i為陣列第乙個元素的索引,j為最後乙個。

3,從j開始,向前尋找找到比中樞值小的值後停下來,交換a[i]與a[j];

4,從i開始,向後尋找找到比中樞值大的值後停下來,交換a[i]與a[j];

5,i==j時退出迴圈。

#include

using

namespace std;

void

quick

(int a,

int low,

int high)

j--;}

while

(ii++;}

}for

(int i=

0;i<

10;i++

) cout<<<

'\t'

; coutlow)

quick

(a,low,i-1)

;if(jquick

(a,j+

1,high);}

intmain()

;quick

(a,0,9

);}

複習資料結構 排序演算法(二) 氣泡排序

這篇複習氣泡排序。氣泡排序也是一種穩定排序 內排序。氣泡排序的基本思想 對當前還未排好序的範圍內的全部數,自上而下對相鄰的兩個數依次進行比較和調整,讓較大的數往下沉,較小的往上冒。即 每當兩相鄰的數比較後發現它們的排序與排序要求相反時,就將它們互換。插入排序比氣泡排序快!上面說的是普通的氣泡排序演算...

複習 冒泡,快速 排序

氣泡排序是面試最基礎的內容一定要會 氣泡排序的思想 對於一組陣列 針對從大到小 每次迴圈乙個乙個比較找到乙個最大的數放置末尾,後一次迴圈的數個數將會比前一次少1,因為已經確定了乙個數的位置,以此下去將會排完所有資料。來張圖看把清楚點 氣泡排序通常使用兩個for迴圈 第乙個for迴圈則是確定迴圈輪數 ...

資料結構與演算法 排序 氣泡排序

兩兩相鄰記錄的關鍵字,如果反序則交換,直到沒有反序的記錄為止。氣泡排序基本概念是 依次比較相鄰的兩個數,將小數放在前面,大數放在後面。即在第一趟 首先比較第1個和第2個數,將小數放前,大數放後。然後比較第2個數和第3個數,將小數放前,大數放後,如此繼續,直至比較最後兩個數,將小數放前,大數放後。至此...