冒泡排序是最簡單的一種排序算法,其時間復雜度為n方,代碼實現如下:
void BubleSort(int *numbers, int beginning, int tail) { for (int i = beginning; i < tail; i++) { for (int j = tail - 1; j > i; j--) { if(numbers[j] < numbers[j - 1]) { int tmp = numbers[j - 1]; numbers[j - 1] = numbers[j]; numbers[j] = tmp; } } } }
這是冒泡排序最直接的一種寫法,但是它還有可以優化的地方,隨后會列出優化后的冒泡排序算法。