選擇,冒泡,快速排序

2021-07-06 03:09:30 字數 532 閱讀 9605

排序演算法是演算法中比較基礎的,在這裡先對三種最簡單的排序演算法做個總結。

一、選擇排序

大致思路為:依次選擇無序區的最小值和無序區的第乙個值交換。

**:

void exchange(int

*a,int

*b)void selection_sort(int a,int len)

時間複雜度為n^2。

二、氣泡排序

大致思路:就像冒泡泡一樣,輕的向上浮,重的向下沉。

**:

void bubble_sort(int a,int

len)

時間複雜度為n^2。

三、快速排序

思路:選定乙個基準值,使所有比它小的數在它左邊,比它大的數在右邊。

**:

void quick_sort(int a,int

left,int

right)

時間複雜度為nlgn。

冒泡,選擇,快速排序

氣泡排序 比較相鄰的兩個數,把比較的冒上去,所以很簡單的得到 for i 0 i 5 i 選擇排序 就是打擂台的方式,每一次找出最大的與末尾的交換,先把啊a i 的值和位置存上,然後與a j 比較,如果value大就賦值給臨時變數,然後交換位置 void selectsort char a,int ...

氣泡排序,選擇排序,快速排序

1.氣泡排序 氣泡排序 bubble sort 最為簡單的一種排序,通過重複走完陣列的所有元素,通過打擂台的方式兩個兩個比較,直到沒有數可以交換的時候結束這個數,再到下個數,直到整個陣列排好順序。因乙個個浮出所以叫氣泡排序。雙重迴圈時間o n 2 void bubblesort int arr in...

氣泡排序 選擇排序 快速排序

氣泡排序的思想在於,不斷地將當前元素與後乙個元素進行比較,如果當前元素較小,則調換當前元素與後乙個元素的位置,否則保持不變 假設需要排序的元素一共有n個,從第乙個元素開始,對後續的 n 2 元素進行上述比較,最終的排序結果中,最後的元素是最大值。def bubble sort alist n len...