当前位置:网站首页>go实现快速排序
go实现快速排序
2022-08-08 20:53:00 【Chise1】
概述
心血来潮,突然想写个排序:
package main
import "fmt"
func kp(s []int, l, r int) {
if l < r {
i, j := l, r
k := s[l]
for {
for {
if i < j {
if s[j] < k {
s[i] = s[j]
break
} else {
j--
}
} else {
break
}
}
for {
if i < j {
if s[i] > k {
s[j] = s[i]
break
} else {
i++
}
} else {
break
}
}
if i < j {
continue
} else {
s[i] = k
kp(s, l, i-1)
kp(s, i+1, r)
return
}
}
}
}
func main() {
a := []int{
1, 6, 2, 4, 8, 5, 7, 3, 0, 9}
b := []int{
0, 7, 3, 1, 4, 5, 8, 9, 2, 6}
kp(a, 0, len(a)-1)
fmt.Println(a)
kp(b, 0, len(b)-1)
fmt.Println(b)
}
边栏推荐
猜你喜欢
随机推荐
解决执行Command报错fork/exec /xxx/yy: no such file or directory
【翻译】宣布Kubernetes策略管理论文
新规划|广州都市圈将以广佛为核心,广佛将有18条地铁相连通
Gradle简单到使用kotlin编写到常用命令
Kotlin annotations
实践篇1:深度学习之----LetNet之tensorflow2的实现
莅临GOPS大会龙智展位,获取Forrester最新报告:《Forrester Wave:2021年第四季度企业服务管理报告》
Kotlin反射
rk3588使用npu进行模型转换和推理,加速AI应用落地
Flask 教程 第十二章:日期和时间
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception
Questions about Mac terminal custom commands and Mysql command
Kotlin - learn the fifth day of the Handler
Flask 教程 第一章:Hello, World!
矩阵相乘
Kotlin注解
AtCoder Beginner Contest 263(A~F)
SQL注入之搭建dnslog
头脑风暴:打家劫舍2
跨域问题 什么时候出现跨域问题 如何解决跨域问题