以下为代码实现function heapsort( array ){ bulidHeap( array ); for( var i = array.length-1; i >= 0; --i ){ swap( array, 0, i ); adjust( ar...
                            
                            
                                分类:
编程语言   时间:
2014-12-27 21:41:55   
                                阅读次数:
230
                             
                    
                        
                            
                            
                                1、代码如下package better.amy.sort;/** * 堆排序实现 * * @author zhujinrong * */public class HeapSort { /** * 构造大堆 大根堆排序的结果是升序 * * @param a ...
                            
                            
                                分类:
编程语言   时间:
2014-10-29 14:22:33   
                                阅读次数:
206
                             
                    
                        
                            
                            
                                堆排序的原理也非常简单,只是实现起来要注意一些细节(比归并排序稍微麻烦那么一点点),本文将详细解释堆排序的内部原理以及实现细节,备忘。
                            
                            
                                分类:
编程语言   时间:
2014-10-27 17:27:19   
                                阅读次数:
207
                             
                    
                        
                            
                            
                                堆排序基本思路:根据完全二叉树,建立最大最小堆来排序时间复杂度:O(nlongn)/** * */package com;/** * @author wenb * @time 下午03:52:55 * @date 2014-10-24 */public class HeapSort { pu...
                            
                            
                                分类:
编程语言   时间:
2014-10-24 18:29:10   
                                阅读次数:
221
                             
                    
                        
                            
                            
                                HeapSort 原理:(堆排序是不稳定的)实现堆排序可以看成分为两个部分:	1.从一个无序堆建成一个大顶堆(假设我们要求从小到大排序)	2.在“输出”堆顶元素之后,调整剩余元素成为一个新的堆建立大顶堆方法:	从最后一个非叶子结点开始向前遍历,每一个遍历到的结点都和它的两个(或者一个)子结点中的最大...
                            
                            
                                分类:
编程语言   时间:
2014-10-10 00:01:37   
                                阅读次数:
244
                             
                    
                        
                            
                            
                                #include 
#include 
void MaxHeapify(int a[],int length,int i);
void BuildMaxHeapify(int a[],int length);
void HeapSort(int a[],int length);
void main(void)
{
	int i;
	int a[10]={1,3,4,2,1,3,2,19,4,...
                            
                            
                                分类:
其他好文   时间:
2014-10-07 00:45:41   
                                阅读次数:
196
                             
                    
                        
                            
                            
                                转自:http://blog.csdn.net/vast_sea/article/details/8167968看上去似乎任何已知的算法都无法做到,如果谁做到了,那么所有的排序方法:QuickSort,ShellSort,HeapSort,BubbleSort等等等等,都可以扔掉了,还要这些算法干吗...
                            
                            
                                分类:
其他好文   时间:
2014-10-01 20:22:01   
                                阅读次数:
135
                             
                    
                        
                            
                            
                                堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。...
                            
                            
                                分类:
其他好文   时间:
2014-09-30 20:07:20   
                                阅读次数:
211