排序算法
Ragty_
人生の目的の一つは楽しむことです
展开
-
排序算法(一) 插入排序及Java实现
1.插入排序 插入排序是一种简单的排序算法,从头遍历数组,依此比较排序 代码实现: public void insertionSort(List<T> list, Comparator<T> comparator) { for (int i=1; i<list.size(); i++) { T elt_i = list....原创 2019-06-12 20:18:06 · 533 阅读 · 1 评论 -
排序算法(二)归并排序Java实现及分析
###### 1.归并排序 归并操作(merge),也叫归并算法,指的是将两个顺序序列合并成一个顺序序列的方法。 如 设有数列{6,202,100,301,38,8,1} 初始状态:6,202,100,301,38,8,1 第一次归并后:{6,202},{100,301},{8,38},{1},比较次数:3; 第二次归并后:{6,100,202,301},{1,8,38},比较次数:4; 第三...原创 2019-06-12 20:25:09 · 889 阅读 · 0 评论 -
排序算法(三)堆排序及有界堆排序Java实现及分析
1.堆排序 基数排序适用于大小有界的东西,除了他之外,还有一种你可能遇到的其它专用排序算法:有界堆排序。如果你在处理非常大的数据集,你想要得到前 10 个或者前k个元素,其中k远小于n,它是很有用的。 例如,假设你正在监视一 个Web 服务,它每天处理十亿次事务。在每一天结束时,你要汇报最大的k个事务(或最慢的,或者其它最 xx 的)。一个选项是存储所有事务,在一天结束时对它们进行排序,然后选择...原创 2019-06-12 20:31:02 · 568 阅读 · 1 评论