- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 利用二叉堆实现优先队列Java实现
package com.prince.algorithm; /** * 利用二叉堆实现优先队列 * @author Prince * * @param <Key> */ public class MaxPQ<Key extends Comparable<Key>> { private Key[] pq; //基于堆的完全二叉树 priva...
2019-02-23 14:37:34 147
原创 快速排序java实现(两种方式)
package com.prince.algorithm; public class QuickSort { public static void sort(Comparable[] a) { //使用shuffle消除对输入的依赖 } private static void sort(Comparable[] a,int low,int high) { if(high...
2019-02-23 14:01:31 614
原创 shell排序java实现
package com.prince.algorithm; /** * shell排序的思想是使数组中任意间隔为h的元素都是有序的,是在插入排序的基础 * 上进行的改进,一开始h很大,使得元素可以移动到很远的位置,成为局部有序。 * 然后h递减最终为1,成为了传统意义上的插入排序,区别是已经存在了很多局部有序 * 的小数组。 * 排序之初,各个子数组都很短,排序之后子数组都是部分有序...
2019-02-22 11:19:16 215
原创 插入排序java实现
package com.prince.algorithm; /** * 插入排序 * 对于0到N-1之间的i,将a[i]与a[0]到a[i-1]中比它小的元素 * 依次有序的交换。在索引i由左向右变化的过程中,它左侧的元素 * 总是有序的,所以i到达右端,排序完毕 */ public class InsertSort { public static void sort(Compar...
2019-02-21 21:52:49 95
原创 选择排序java实现
package com.prince.algorithm; /** * 选择排序算法 * 首先找到数组中最小的元素,其次将它和数组的第一个元素交换位置 * (如果第一个元素就是最小元素那么它就和自己交换)。再次,在剩下 * 的元素中找到最小的元素,将它与数组的第二个元素交换位置,重复 * @author Administrator * */ public class Sel...
2019-02-21 21:02:43 87
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人