堆的应用
baobao小野菊
这个作者很懒,什么都没留下…
展开
-
优先级队列
堆的实现--->优先级队列注:由于大堆与小堆的实现大同小异,只需要修改大于或小于号;所以为了代码复用,本人使用了模板参数及模板的模板参数模板的模板参数:为了引入仿函数即函数对象;此处不多介绍仿函数,它只是一个函数对象;一个类型;如下:类型GreaterCompare与类型LessCompare:他们的内部都只是重载了();templatestruct Great原创 2016-05-31 17:30:36 · 370 阅读 · 0 评论 -
文件压缩
Huffman树的应用-------实现文件压缩项目Huffman树的相关定义:WPL(带权路径长度) = PL*weightPL (最小路径长度)= 完全二叉树的路径长度路径(path):从树中一个结点到另一个结点之间的分支构成该俩点之间的路径。路径长度:指路径上的分支条数。树的路径长度是从树的根结点到每一个结点的路径长度之和。带权路径长度最小原创 2016-07-22 23:30:23 · 1210 阅读 · 4 评论 -
堆排序
题目:堆排序原创 2016-05-31 23:31:33 · 335 阅读 · 0 评论 -
堆的实现
堆的实现堆的介绍:二叉堆的底层数据结构为数组,它可以被视为完全二叉树结构;堆的特性:1、父结点总是大于(或小于)子结点2、每个节点的左子树和右子树都是一个最大堆(或最小堆)如图:堆的代码实现如下:提示:本程序利用仿函数与模板实现的堆,大堆与小堆的代码只是一个大于小于号的问题,所以我通过模板传参,实现大小堆,代码复用了起原创 2016-06-22 12:58:37 · 336 阅读 · 0 评论 -
100w个数中找出最大的k个数
题目:100w个数中找出最大的k个数原创 2016-06-05 17:46:47 · 799 阅读 · 3 评论