码迷,mamicode.com
首页 >  
搜索关键字:堆排    ( 1969个结果
DAY 3
DAY 3 数据结构 1.堆 Priority_queue 大根堆 Priority_queue<int , vector<int> , greater<int> > 小根堆 支持插入一个值,删除最大/最小值 它重载了运算符或函数类 堆排序 P1090 合并果子 哈夫曼树 2.LCA(最近公共祖先) ...
分类:其他好文   时间:2019-07-22 09:57:09    阅读次数:128
堆排序
1 #include 2 using namespace std; 3 int n; 4 int a[100]; 5 6 void update(int x,int m)//下沉 7 { 8 int l=x*2; 9 if(l>m)return; 10 if(la[x])swap(a[l],a[x]... ...
分类:编程语言   时间:2019-07-20 21:32:30    阅读次数:105
P1177快速排序
这是一个快速排序的模板题。拿到题后便写了quicksort(确定一个基准数,利用两个哨兵,把大的放右边,小的放左边,再递归实现排序),但是竟然TLE了60pts(???),于是翻看dalao们的题解,发现了堆排序(在清北学会了,但是一个学期后给忘了),然后看到了一个multiset(set去重,它不 ...
分类:编程语言   时间:2019-07-19 20:53:46    阅读次数:111
排序--最大堆构造和堆排序(单步查看过程)
这里先简单说下最大堆的基本性质: 最大堆一定是完全二叉树 当父节点为 n 时,左孩子为 n 2 + 1,右孩子为 n 2 + 2 当孩子为 n 时,其父节点为: (n 1) / 2 这一点很重要,在后面初始化的时候会用到 父节点大于等于左孩子和右孩子,但左孩子不一定大于右孩子 了解以上基本性质之后, ...
分类:编程语言   时间:2019-07-16 08:27:45    阅读次数:79
排序算法总结
排序算法 大部分算法都是从 无序区 扩展到 有序区 一、算法概述 1. 冒泡排序 O(N2),空间O(1) 每一轮从无序区冒泡出一个最大的数到有序区 2. 选择排序O(N2),空间O(1) 每一轮从无序区选择一个最大的数到有序区 3. 堆排序O(NlogN),空间O(1) 其实就是 选择排序的改进 ...
分类:编程语言   时间:2019-07-14 12:56:49    阅读次数:124
学习:STL----优先队列
优先队列是队列的高级版,最大的特点是可以内部实现排序 优先队列的定义 优先队列内部使用堆排序,从而实现队列内一直保持着某种顺序规律(比如递增,递减等) 在使用优先队列时,首先要引入头文件:#include <queue> 定义一个新类型的优先队列,通常使用: type为优先队列内所存元素的数据类型, ...
分类:其他好文   时间:2019-07-13 13:23:26    阅读次数:126
知道堆排序吗?
堆排序介绍 堆排序是指利用堆积树(堆)这种数据结构所设计的一种排序算法,它是选择排序的一种。 可以利用数组的特点快速定位指定索引的元素。堆分为大根堆和小根堆,是完全二叉树。 什么是完全二叉树呢?还有满二叉树又是怎么的一种二叉树呢?还有完满二叉树? 完全二叉树: 除了最后一层之外的其他每一层都被完全填 ...
分类:编程语言   时间:2019-07-07 12:38:47    阅读次数:109
算法稳定性
常见排序算法的稳定性 编辑 常见排序算法的稳定性 堆排序、快速排序、希尔排序、直接选择排序是不稳定的排序算法,而基数排序、冒泡排序、直接插入排序、折半插入排序、归并排序是稳定的排序算法。 首先,排序算法的稳定性大家应该都知道,通俗地讲就是能保证排序前2个相等的数其在序列的前后位置顺序和排序后它们两个 ...
分类:编程语言   时间:2019-06-30 23:10:29    阅读次数:222
排序算法(三)堆排序及有界堆排序Java实现及分析
1.堆排序基数排序适用于大小有界的东西,除了他之外,还有一种你可能遇到的其它专用排序算法:有界堆排序。如果你在处理非常大的数据集,你想要得到前 10 个或者前k个元素,其中k远小于n,它是很有用的。 例如,假设你正在监视一 个Web 服务,它每天处理十亿次事务。在每一天结束时,你要汇报最大的k个事务 ...
分类:编程语言   时间:2019-06-29 13:08:31    阅读次数:126
9 Java 堆排序
堆是具有以下性质的完全二叉树,每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点的值,称为小顶堆。如下图: 同时,我们对堆中的结点按层进行编号,将这种逻辑结构映射到数组中就是下面这个样子: 该数组从逻辑上讲就是一个堆结构,我们用简单的公式来描述一下堆的 ...
分类:编程语言   时间:2019-06-25 17:02:51    阅读次数:121
1969条   上一页 1 ... 25 26 27 28 29 ... 197 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!