码迷,mamicode.com
首页 >  
搜索关键字:堆排序    ( 1851个结果
堆排序
数据结构与算法,排序算法
分类:编程语言   时间:2015-07-18 16:49:30    阅读次数:151
序列——堆排序-大根堆(堆大顶)
1.小根堆如果根是儿童的存在留下的根值左孩子小于值;如果根是儿童的权利的存在的根值比他们的孩子的权利少值。2.大根堆如果根是儿童的存在留下的根值多名离开自己的孩子值。子女则根节点的值大于右子女的值。3.结论(1)堆是一棵全然二叉树(假设公有h层,那么1~h-1层均满,在h层连续缺失若干个右叶子)。(...
分类:编程语言   时间:2015-07-18 13:49:08    阅读次数:179
各种排序算法分析及其Java实现
排序可分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,称为内排序;如果排序过程中需要使用外存,则成为外排序。 内排序有以下几类: 插入类排序:直接插入排序、二分法(折半)插入排序、希尔(缩小增量)排序 选择类排序:简单选择排序、堆排序 交换类排序:冒泡排序、快速排序、三路划分的快速排序 归并类排序:二路归并排序 基数类排序:MSD基数排序、LSD基数排序 各种内部排序算法的比较直接插入...
分类:编程语言   时间:2015-07-18 11:09:15    阅读次数:165
排序算法之堆排序
堆排序是一种树形选择排序,是对直接选择排序的有效改进。 堆是一种数据结构,其定义:任何一个非叶结点的值,都不大于(或不小于)其左右孩子结点的值。若父亲大孩子小,则这样的堆叫做大顶堆;若父亲小孩子大,则这样的堆叫做小顶堆。顾名思义,大顶堆的根结点的值是最大的,小顶堆的根结点的值是最小的。基本思想首先,将一个无序序列调整为大顶堆(小顶堆),我们就找到了这个无序序列的最大(或最小)值,然后将这个值交换到...
分类:编程语言   时间:2015-07-18 11:03:33    阅读次数:142
堆排序
堆排序算法原理 堆排序算法,就是利用二叉树的原理,我们知道,对于二叉树而言,具有一定的排序性质: 如 左节点是小于根节点的值,右节点的值肯定是大于根节点的值的,因此, 我们算是快能找到某一个元素 因为如果当前元素比要找的元素要大,那么就往右走,如果当前元素比要找的元素要小,那么往右找,呵呵,相 信如...
分类:编程语言   时间:2015-07-17 20:54:24    阅读次数:278
求出数组前面k个元素或数组中元素大于一半的元素(快速排序与堆排序的灵活运用)
写这个的目的在于,说明快速排序的灵活运用。我们来看下关于快速排序中的一部分关键代码:快速排序代码:int a[101],n;//定义全局变量,这两个变量需要在子函数中使用 void quicksort(int left,int right) { int i,j,t,temp; if(left>rig...
分类:编程语言   时间:2015-07-17 20:50:46    阅读次数:258
堆排序(C语言)
#ifndef HEAP_SORT_H#define HEAP_SROT_H#includevoid maxHeap(int *arr,unsigned int Length); void maxHeap(int *arr,unsigned int rootIndex,unsigned int he...
分类:编程语言   时间:2015-07-17 20:42:27    阅读次数:189
for( unsigned int i=heapSize/2-1; i>=0; --i)
unsigned int的表示今天在写堆排序的时候遇到一个BUGvoid builMaxHeap( int *arr,unsigned int heapSize){ unsigned int i; for(i=heapSize/2-1; i>=0;--i){ std::cout=0;--i){上面换...
分类:其他好文   时间:2015-07-17 20:38:16    阅读次数:136
堆排序
堆排序相对冒泡这些要复杂一些,它需要先初始化堆。.net里List的排序就混合使用了堆排序和快速排序。出于学习目的,代码示范里不使用数组结构,数组比较深涩。而使用嵌套类来实现。1.初始化堆排序肯定是有升序和降序两种,堆排序也一样,分为大顶堆和小顶堆。初始化堆的目的就是变为大顶堆或者小顶堆传统的方法是...
分类:编程语言   时间:2015-07-17 20:34:48    阅读次数:200
决策树模型
这一节决策树其实是对前面的堆排序,快排等是最优的比较算法的证明, 首先说下《算法导论》上对决策树的定义:一棵决策树是一棵满二叉树(注意看下面解释),表示某排序算法作用于给定输入所做的所有比较,而控制结构,移动等都被忽略了。 注意:这里个人认为定义是错误的,决策树不是一棵满二叉树,连完全二叉树都不是。...
分类:其他好文   时间:2015-07-17 00:10:39    阅读次数:242
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!