很早接觸過氣泡排序法,但一直沒有真正的理解,只是為了記住而學習,今天又重新看了一下,其實氣泡排序法第一次排序會把最大的冒到最上面,第二次會把次大的泡冒到最大的後面,一次類推····,另外在排序的次數上會逐漸減少。看**:
void bubble_sort(int *a,intn)}
其實還可以優化一下,當發現沒有進行交換證明已經排好了就跳出迴圈。
void bubble_sort2(int *a,intn) }
k--;
}}
測試**:
#include usingnamespace
std;
void bubble_sort(int *a,int
n);void bubble_sort2(int *a,int
n);void swap(int *a,int *b)
intmain()
; bubble_sort2(a,
10);
for(int i = 0;i<10;i++)
getchar();
return0;
}
氣泡排序以及氣泡排序的優化
很早接觸過氣泡排序法,但一直沒有真正的理解,只是為了記住而學習,今天又重新看了一下,其實氣泡排序法第一次排序會把最大的冒到最上面,第二次會把次大的泡冒到最大的後面,一次類推 另外在排序的次數上會逐漸減少。看 void bubble sort int a,int n 其實還可以優化一下,當發現沒有進行...
氣泡排序以及如何優化氣泡排序
氣泡排序的基本思想是 通過對待排序序列從前往後 從下標較小的元素開始 依次比較相鄰元素的值,若發現逆序則交換,使值較大的元素逐漸從前移向後部,就像水底下的泡泡一樣逐漸向上冒。測試八萬個資料進行排序,使用優化後的 大致需要20秒 如下 public static void bubblesort int...
氣泡排序以及優化
排序 1.穩定的排序演算法 2.不穩定的排序演算法 3.比較排序 元素之間的次序依賴它們之間的比較,每個數需要與其他數進行比較才能確定自己的位置。比較典型的比較排序有快速排序,歸併排序,堆排序,氣泡排序。4非比較排序 非比較排序只要確定每個元素之前的已有元素個數即可,經過一次遍歷便可以解決。排序 1...