摘要: /** * 归并排序 * 简介:将两个(或两个以上)有序表合并成一个新的有序表 即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列 * 时间复杂度为O(nlogn) * 稳定排序方式 * @param nums 待排序数组 * @return 输出有序数组 */ publi... 阅读全文
posted @ 2015-05-07 15:41 Maydow 阅读(228) 评论(0) 推荐(0)
摘要: 1. 快速排序 介绍: 快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的 阅读全文
posted @ 2015-05-07 15:11 Maydow 阅读(296) 评论(0) 推荐(0)
摘要: 快速算法的思路就是对数组分区排序 一般的先取第一个数作为基准数,然后将整个数列按大小分成两个区,大于基准数的在右边,小于的在左边。然后分别对分区按照上面的方法在进行分区排序,直到整个数组排序好。 下面以一个数组为例: 6,7,1,8,3,9,2,5,10 一般的以第一个数作为基准数,那么怎么才能将大 阅读全文
posted @ 2015-05-07 15:04 Maydow 阅读(222) 评论(0) 推荐(0)