排序
ColorWaterer
Orz
展开
-
冒泡排序
/***************************************************** ** Main: 冒泡排序 * Code by: Xiangjie.Huang * Date: 2014/08/18 * Blog: http://blog.163.com/surgy_han ** ** (1) 比较相邻的元素, 如果第一个比第二个大, * 就交换他们两原创 2014-11-17 23:30:26 · 342 阅读 · 0 评论 -
优化快速排序的几个方法
普通的快排方法对于随机数组来说是挺快的,但是当遇到已经排好序的数组,复杂度马上就降为O(n^2)了。所以我们需要对其进行优化。首先产生这种情况的原因是什么?是基数,当一个已经排好序的数组,我们所选的基数要么最大,要么最小,这就使得在排序过程中耗费了大量时间,那么如何筛选基数?方法一:随机数产生区间内的某个数。方法二:在划分算法上进行优化。我们将同时从两端进行遍历,将需要的值进行交换即可。方法三:短原创 2014-11-17 23:30:56 · 777 阅读 · 0 评论 -
插入排序
/***************************************************** ** Main: 插入排序 * Code by: Xiangjie.Huang * Date: 2014/08/18 * Blog: http://blog.163.com/surgy_han ** ** (1) 将第一待排序序列第一个元素看做一个有序 * 序列, 把第二个原创 2014-11-17 23:30:21 · 370 阅读 · 0 评论 -
选择排序
/***************************************************** ** Main: 选择排序 * Code by: Xiangjie.Huang * Date: 2014/08/18 * Blog: http://blog.163.com/surgy_han ** ** (1) 首先在未排序序列中找到最小( 大 )元素, * 存放到排序原创 2014-11-17 23:30:24 · 423 阅读 · 0 评论 -
归并排序
/***************************************************** ** Main: 归并排序 * Code by: Xiangjie.Huang * Date: 2014/08/18 * Blog: http://blog.163.com/surgy_han ** ** (1) 分治法 * (2) 例如二路归并, 谁小谁上谁队列往后一位 *原创 2014-11-17 23:30:29 · 314 阅读 · 0 评论 -
还是排序算法
最近面试经常会碰到一些排序上的题目,所以回去之后一直在巩固这方面的知识。对于排序算法,我们不能仅看他的效率有多高,还要观察他所占用空间大小和稳定性。一、排序的关键因素1、空间In-place sort:插入排序、选择排序、冒泡排序、堆排序、快速排序。Out-place sort:归并排序、计数排序、基数排序、桶排序。这就说明,当数据量过大时,选择 In 排序的比较明智的,因为 Out 排序所占用的原创 2014-11-17 23:30:59 · 414 阅读 · 0 评论