图解算法练习--快速排序(GO实现)
2017-09-13 14:36
239 查看
图解算法第二章快速排序使用GO语言实现,仅供参考,错误之处,欢迎联系我纠正
package main import ( "fmt" ) func main() { fmt.Println(quickSort([]int{99, 93, 33, 55, 63, 23, 44, 32, 43, 312})) fmt.Println(quickSort([]int{3, 5, 3})) fmt.Println(quickSort([]int{1})) fmt.Println(quickSort([]int{})) } func quickSort(list []int) []int { if len(list) >= 2 { middle := list[0] less := []int{} greater := []int{} for _, item := range list[1:] { if item >= middle { greater = append(greater, item) } else { less = append(less, item) } } result := append(append(quickSort(less), middle), quickSort(greater)...) return result } else { return list } }
相关文章推荐
- 图解算法练习--快速排序(PHP实现)
- 图解算法练习--选择排序(Go实现)
- 图解算法练习--二分查找法(PHP实现)
- [算法练习]快速排序的C语言实现
- 图解算法练习--二分查找法(Go语言实现)
- 算法 -- Java实现快速排序(图解 + 代码实现)
- 图解算法练习--选择排序(PHP实现)
- C语言实现数组快速排序(含对算法的详细解释)
- 算法练习--二分搜索哈希表-JS 实现
- 快速排序(快排)算法的C++两种实现
- python算法--快速排序详细实现
- 使用插入排序优化快速排序的算法实现
- 算法练习--二分搜索哈希表-JS 实现
- 快速排序 算法 Java 实现
- 算法(第四版)学习笔记之java实现快速排序
- scala数据结构和算法-04-快速排序实现
- 归并排序和快速排序的算法实现
- 【前端也要学点算法】快速排序的JavaScript实现
- 算法练习 -- DP C# 实现 全组合算法