数据结构排序
balences
stubborn is cool
展开
-
归并排序
归并排序 今天说一下归并排序,归并排序是采用了分治法的思想,我们可以用图来理解这个算法是怎么实现的。 理解这张图的含义你就差不多能够理解归并排序的意思,归并排序就是分半治理,再对那一半进行分半治理,最终会形成上面图的第一行,全部变成一个,然后进行归并。 以下是代码实现 private static void mergeData(int[] arr,int left,int mid,int righ...原创 2020-04-20 22:09:45 · 111 阅读 · 0 评论 -
快速排序
快速排序 快速排序是非常重要的一种排序方式 思路:1:首先找一个基准值,一般就数组首元素,比较方便 2:然后从右边或者左边开始比较,看你基准值的位置,基准值在左边,就先从右边开始比较 3:从右边开始找到第一个比基准值小的数停下,开始从左边开始比较,找到第一个比基准值大得数停下。 4:交换这两个数的位置,继续循环,直到退出循环 5:最后交换基准值的位置与左边最后停下的位置。返回停下的那个位置,那里的...原创 2020-04-09 23:46:17 · 120 阅读 · 0 评论 -
插入排序和希尔排序
插入排序 直接插入排序是一种简单的插入排序法,其基本思想是:把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。 下面是直接插入排序的代码: public static void main(String[] args) { int[] array={6,3,5,2,7,1,0,8,9,4}; Prac...原创 2020-03-27 13:42:14 · 102 阅读 · 0 评论