摘要: 【基本思想】 将待排序序列构造成一个大根堆,此时,整个序列的最大值就是堆顶的根节点。将其与末尾元素进行交换,此时末尾就为最大值,然后将剩余n-1个元素重新构造成一个堆,这样会得到n个元素的次小值,如此反复执行,便能得到一个有序序列了。 堆:具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子 阅读全文
posted @ 2018-10-12 09:10 梦醒时夜续 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 【基本思想】 将所有待排序的数统一为相同的数位长度,数位较短的数前面补零,然后从低位到高位按位比较,位数字小的排在前面,大的排在后面,这样当比较第N位时前N-1位都是有序的,如此循环的比较,直到最高位比较完成,整个序列就是有序的了。 基数排序图文说明 通过基数排序对数组{53, 3, 542, 74 阅读全文
posted @ 2018-10-12 08:33 梦醒时夜续 阅读(915) 评论(0) 推荐(0) 编辑
摘要: 【基本思想】 首先选取一个初始值(一般选取待排序序列的第一个值),通过一趟排序将待排序序列分成两个子序列,使左子序列的所有数据都小于这个初始值,右子序列的所有数据都大于这个初始值,然后再按此方法分别对这两个子序列进行排序,递归的进行上面的步骤,直至每一个数据项都有如下性质:该数据项左边的数据都小于它 阅读全文
posted @ 2018-10-12 08:19 梦醒时夜续 阅读(255) 评论(0) 推荐(0) 编辑