![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
排序算法
文章平均质量分 90
搬砖丶小码农
走向地中海
展开
-
堆排序
目录 什么是堆? 堆排序思路:以小根堆为例 代码实现 堆排序的优缺点 什么是堆? 堆是一类特殊的数据结构,堆通常是一个可以被看做一棵树的数组对象。堆总是满足下列性质: 1.堆中某个节点的值总是不大于或不小于其父节点的值; 2.堆总是一棵完全二叉树。 将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。堆排序是指利用堆这种数据结构所设计的一种排序算法。 ...原创 2018-12-10 10:11:31 · 521 阅读 · 0 评论 -
快速排序
目录 快速排序(Quicksort) 实现图 代码实现: 优缺点 优化: 快速排序(Quicksort) 是对冒泡排序的一种改进。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 思路:将一个数组分为左右两个区间,然...原创 2018-12-17 13:28:37 · 117 阅读 · 0 评论 -
NYOJ-117--求逆序数(归并排序)
求逆序数 题目链接:求逆序数 题解:题目意思为一组数组中,前面的数比后面的数大,那么这两个就是一对逆序数。然后数列中一共有多少这样的逆序数对。 采用归并排序,先分到最小时,在合并两个数组,当左边的数组大于右边的数组时,即左边这个数的逆序数为右边数组剩下的元素个数。然后以此累加这个逆序数对,直至排序完成,累加所得的结果就是数列中逆序数对。 比如 1 3 4 2 实现代码 ...原创 2018-12-13 21:30:23 · 677 阅读 · 0 评论 -
归并排序
目录 归并排序(MERGE-SORT) 算法思路 示例图 代码实现: 算法优缺点: 归并排序(MERGE-SORT) 是建立在归并操作上的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。 算法思路 ...原创 2018-12-11 14:59:18 · 138 阅读 · 0 评论