用golang写个冒泡排序
时间: 2023-06-03 19:03:41 浏览: 125
好的,下面是用 Golang 写的冒泡排序算法:
```
package main
import "fmt"
func bubbleSort(arr []int) {
for i := 0; i < len(arr)-1; i++ {
for j := 0; j < len(arr)-i-1; j++ {
if arr[j] > arr[j+1] {
arr[j], arr[j+1] = arr[j+1], arr[j]
}
}
}
}
func main() {
arr := []int{4, 2, 1, 6, 3, 5}
fmt.Println("Before sorting:", arr)
bubbleSort(arr)
fmt.Println("After sorting:", arr)
}
```
以上就是用 Golang 写的冒泡排序算法了,希望能对你有所帮助。
相关问题
golang 写个冒泡排序
下面是 golang 写的冒泡排序算法:
```go
func bubbleSort(arr []int) []int {
n := len(arr)
for i := 0; i < n-1; i++ {
for j := 0; j < n-1-i; j++ {
if arr[j] > arr[j+1] {
arr[j], arr[j+1] = arr[j+1], arr[j]
}
}
}
return arr
}
```
该算法的时间复杂度为 O(n^2),不适合处理大规模的数据。
用golang写一个冒泡排序
这是一个用Go语言实现的冒泡排序的代码:
```
package main
import "fmt"
func bubbleSort(arr []int) {
n := len(arr)
for i := 0; i < n-1; i++ {
for j := 0; j < n-i-1; j++ {
if arr[j] > arr[j+1] {
arr[j], arr[j+1] = arr[j+1], arr[j]
}
}
}
}
func main() {
arr := []int{64, 34, 25, 12, 22, 11, 90}
fmt.Println("排序前: ", arr)
bubbleSort(arr)
fmt.Println("排序后: ", arr)
}
```
该代码实现了从小到大的冒泡排序,使用了两层for循环,内层循环比较相邻两个数,如果顺序不对就交换位置。外层循环控制比较的轮数。
阅读全文