排序算法
Apache723
你好 世界
展开
-
希尔排序
上篇博客 写了一点关于插入排序和选择排序的东西,今天以我的理解来介绍一下Shell排序 我们知道 插入排序在数组基本有序的条件下,性能表现的很好。 基于这点,我们想能不能让数组在插入排序之前变得基本有序,当然,这点是可以做到的。 我们在shell排序中通过将数组分组比如 1,3,4,6,2,5 这六个元素我们分为2组的话 就有a[0],a[2],a[4]={1,4,2} a[1],a[3],...原创 2018-08-04 19:49:54 · 111 阅读 · 0 评论 -
关于选择排序和插入排序的分析
我们先介绍一下选择排序和插入排序 选择排序 : 是每次从索引i开始遍历数组找到最小的数放在第i个位置 每次我们先默认i是最小数的索引,我们从i后面开始比较,如果找到比a[i]更小的a[j] 我们把min=j 然后我们交换a[i],a[min] 这样我们就可以保证第i个位置的值是从i开始到后面中最小的 假设数组长度为n 我们进行了(n^2 -n)/2次 约为n^2/2 我们交换了n次 插入排序(...原创 2018-08-02 21:15:47 · 167 阅读 · 0 评论 -
快速排序
有一个月没有写代码了,之前一直在忙着复习的事情,考试完了,学校还搞了一周的实训,没有时间来写。。。,寒假回家准备重温一下数据结构的知识,为以后的刷算法题做准备。 public class QuickSort { public static void main(String [] args){ Integer [] test = new Integer[15]; ...原创 2019-01-19 11:26:39 · 156 阅读 · 0 评论 -
快速排序改进
public class QuickSort { public static void main(String [] args){ Integer [] a= new Integer[15]; for(int i=0;i<a.length;i++){ a[i] = (int)(Math.random() * 100); ...原创 2019-01-19 18:09:37 · 259 阅读 · 0 评论