排序
qq_31916715
这个作者很懒,什么都没留下…
展开
-
计数排序模板
遍历数组统计最小值min、最大值max是多少 建立一个数组cntArray长度为max - min + 1 统计每个数出现的次数 遍历cntArray,对于cntArray中的每个数所对应的个数放入原数组中 public class CounterSort { public static void main(String[] args) { CounterSort counterSort = new CounterSort(); int[] arr = {5, 1.原创 2020-05-15 10:38:31 · 10396 阅读 · 0 评论 -
选择排序模板
选择排序: 每次都选择最小的数放在已经排序好的序列之后,直到所有的序列都被排好序。 import java.util.Arrays; public class SelectSort { public static void main(String[] args) { int[] arr = {2, 1, 4, 3, 5, 7, 6, 9, 8, 0}; s...原创 2020-05-06 15:10:22 · 9699 阅读 · 0 评论 -
希尔排序模板
希尔排序原理: 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。 代码: import java.util.Arrays; import java.util.HashMap; import java.util.Iterator; import java.util.Map; p...原创 2020-04-29 13:53:51 · 9752 阅读 · 0 评论 -
归并排序模板
归并排序原理: 1、将一个数组一份为二 2、递归处理前后段,使前后半有序 3、将前后半段进行归并得到有序数组 import java.util.Arrays; public class MergeSort { public static void main(String[] args) { int[] arr = {2, 1, 4, 3, 5, 7, 6, 9, 8, 0...原创 2020-04-27 14:43:42 · 9706 阅读 · 0 评论 -
堆排序模板
堆排序原理: 本文中使用的堆为最大堆,堆顶元素为索引为0的元素。 1、将一个无序的数组构建成一个最大堆 2、交换0号元素和最后一个元素,则最后一个元素(索引假设为 lastIndex )为最大的元素 3、将[0 ~ lastIndex - 1]的元素构建最大堆,则0号元素为最大元素 4、交换 0 和 lastIndex - 1的元素,则 lastInde - 1, lastIndex元素有序。 5...原创 2020-04-23 18:27:23 · 9716 阅读 · 0 评论 -
冒泡排序模板
冒泡排序原理:相邻元素两两比较大的往后放 import java.util.Arrays; import java.util.Random; public class BubbleSort { public static void main(String[] args) { int[] arr = new int[]{2, 3, 1, 4, 5}; bub...原创 2020-04-20 16:42:02 · 9944 阅读 · 0 评论 -
插入排序模板
插入排序步骤 数组只有一个数是数组有序 数组元素超过两个,从第二个数x开始,和前一个数y比较,存在三种情况(x == y, x > y, x < y) x == y x 和 y 有序 x > y x 和 y 有序 x < y 需要将x插入到0 ~ (x - 1)的合适位置 public static void insertSort(int[] arr) ...原创 2020-04-16 11:26:45 · 9685 阅读 · 0 评论 -
快排模板
原创 2020-04-04 20:40:35 · 9738 阅读 · 0 评论