![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
duhf_think
这个作者很懒,什么都没留下…
展开
-
Java排序算法:堆排序
[算法说明] 堆排序是对简单选择排序的改进 简单选择排序是从n个记录中找出一个最小的记录,需要比较n-1次。但是这样的操作并没有把每一趟的比较结果保存下来,在后一趟的比较中,有许多比较在前一趟已经做过了,但由于前一趟排序时未保存这些比较结果,所以后一趟排序时又重复执行了这些比较操作,因而记录的比较次数较多。 堆是具有下列性质的完全二叉树:每个结点的值都大于或等于其左右转载 2015-06-25 09:05:43 · 450 阅读 · 0 评论 -
Java排序算法:归并排序
[算法思想] 假设初始序列含有n个元素,我们可以把它看成是n个有序的子序列,每个子序列的长度为1,然后两两合并,得到n/2个长度为2的有序子序列,再两两归并... 如此重复,直至得到一个长度为n的有序序列位置,这种排序方法称为2路归并排序。 如:无序数组序列{50, 10, 90, 30, 70, 40, 80, 60, 20} [java实现] 使用递归:转载 2015-06-25 09:07:09 · 396 阅读 · 0 评论 -
Java排序算法:快速排序
[算法思想] 通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的元素均比另一部分记录的元素小,然后分别对这两部分记录继续进行排序,从而达到整个序列有序的目的。 快速排序是冒泡排序的升级版,因为它的思想也是元素的交换。 [java实现] [java] view plaincopy public class Qu转载 2015-06-25 09:08:09 · 496 阅读 · 0 评论