算法
SAM_XIE_52
Time is friend.
展开
-
算法系列1—排序算法之选择排序(SelectionSort)
原理简介遍历元素找到其中最小(或最大)的那个元素,把它放在第一位;然后再在剩余元素中遍历元素找到最小(或最大)的那个元素,把它放在第二位;依次下去,完成排序。代码实现public class SelectionSort { public static void selectSort(int[] arr) { for (int index = 0; index...原创 2019-09-21 15:22:40 · 265 阅读 · 0 评论 -
算法系列0—排序算法之测试工具类
public class SortTestUtil { //构造方法私有化,工具类无需产生任何实例 private SortTestUtil() { } // 生成有n个元素的随机数组,每个元素的随机范围为[rangeL, rangeR] public static Integer[] generateRandomArray(int number, int ra...原创 2019-09-25 15:29:20 · 153 阅读 · 0 评论 -
算法系列2—排序算法之插入排序(InsertionSort)
算法步骤从第一个元素开始,该元素可以认为已经被排序;取出下一个元素,在已经排序的元素序列中从后向前扫描;如果该元素(已排序)大于新元素,将该元素移到下一位置;重复步骤3,直到找到已排序的元素小于或者等于新元素的位置;将新元素插入到该位置后;重复步骤2~5。动图展示代码实现 //插入排序 public static void insertionSort(int[...原创 2019-09-25 16:45:45 · 195 阅读 · 0 评论 -
算法系列3—排序算法之归并排序(MergeSort)
算法步骤把长度为n的输入序列分成两个长度为n/2的子序列;对这两个子序列分别采用归并排序;将两个排序好的子序列合并成一个最终的排序序列。动图展示代码实现 public static void mergeSort(int[] arr) { mergeSort(arr, 0, arr.length - 1); } private static vo...原创 2019-09-26 17:29:00 · 258 阅读 · 0 评论