Go 語言中的氣泡排序
氣泡排序是一種透過交換順序列中的元素來進行排序的演算法。它會多次檢查相鄰元素是否處於正確的順序(升序)。
氣泡排序的時間複雜度為 O(n^2),因為它需要兩個巢狀迴圈來檢查相鄰元素。
例如,我們取以下未排序陣列 -
22 15 11 45 13
氣泡排序演算法首先遍歷整個陣列,然後在另一個迴圈中檢查相鄰元素是否處於正確順序。
因此,排序後的元素將為,
11 13 15 22 45
演算法
在兩個巢狀迴圈中,將每個元素與其相鄰元素進行比較。
如果該元素小於前一個元素,則交換該元素。
列印該陣列。
示例
氣泡排序演算法的實現
package main
import "fmt"
func BubbleSort(array[] int)[]int {
for i:=0; i< len(array)-1; i++ {
for j:=0; j < len(array)-i-1; j++ {
if (array[j] > array[j+1]) {
array[j], array[j+1] = array[j+1], array[j]
}
}
}
return array
}
func main() {
array:= []int{11, 14, 3, 8, 18, 17, 43};
fmt.Println(BubbleSort(array))
}輸出
執行以上程式碼會對給定的未排序陣列進行排序並列印輸出,如下 &miuns;
3 8 11 14 18 17 43
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP