摘要:
---恢复内容开始---算法说明珠排序是分布排序的一种。说实在的,这个排序看起来特别的巧妙,同时也特别好理解,不过不太容易写成代码,哈哈。这里其实分析的特别好了,我就不画蛇添足啦。 大家看一下这个分析,特别特别简单的。然后我对于下面的代码做一下描述:1、找到数组的最大值(20-23行代码)2、创建珠... 阅读全文
摘要:
算法说明鸽巢排序是分布排序的一种,我理解其实鸽巢就是计数排序的简化版,不同之处就是鸽巢是不稳定的,计数排序是稳定的。逻辑很简单,就是先找出待排数组的最大值maxNum,然后实例一个maxNum+1长度的数组。例如待排数组int[] arrayData = { 22, 33, 57, 55, 58, ... 阅读全文
摘要:
算法说明锦标赛排序是选择排序的一种。实际上堆排序是锦标赛排序的优化版本,它们时间复杂度都是O(nlog2n),不同之处是堆排序的空间复杂度(O(1))远远低于锦标赛的空间复杂度(O(2n-1))堆排序是基于二叉树的, 所以锦标赛排序也是基于二叉树的,并且是完美二叉树。我尝试用最通俗的方法来做一下解释... 阅读全文