
Data structure SET
文章平均质量分 72
pandening
我很笨,但我很勤劳!
展开
-
STL空间配置器(一)
STL空间适配器(一)Author:胡建 Time:2016/4/5 这是STL学习的第一部分,空间适配器,所谓空间适配器,就是用来管理内存的一个器具。对于STL来说,空间适配器是它可以正常工作的基础,也为它可以高效工作提供了动力。对于使用STL来说,它是不和用户直接打交道的,而是隐藏在一切STL组建之后,默默为各种内存申请提供支持的。 对于c++用户来说,new和delete很熟悉,这两个原创 2016-04-05 13:09:54 · 2358 阅读 · 0 评论 -
STL空间配置器(三)
上一篇没写完的代码,因为我用的是VS2013所以无法测试我的配置器,我是照着SGI的版本写的,所以不符合STL标准规范,而VS随身带的STL是符合STL规范的,所以我无法测试,等到我自己写好了迭代器,容易之后,就可以测试了,不过在这之前,我将专门用一篇文件来学习并且自己写一个内存池,然后将这个内存池部署到我的HJSTL里面,下面是完整的HJSTL 空间配置器代码 1.0.0,大规模模仿SGI,但是原创 2016-04-07 10:34:20 · 491 阅读 · 0 评论 -
哈夫曼树的c++实现
huffman 树称为最优二叉树,用其来对字符编码是一种比较好的选择,huffman树的实现也比较简单,构造huffman树的思想就是每次从序列中取出权值最小的两个,然后构造出一个树,然再去构造,一直到只有一个根节点为止。根据这个“每次从中选出最小的两个值”,我们应该想到优先队列,优先队列可以迅速的从一堆数中找出极小值或者极大值,用优先队列的这个性质可以很简单的构造huffman树。 当原创 2016-05-24 11:21:10 · 2736 阅读 · 0 评论 -
数据结构之堆的实现
堆:孩子都比父亲大,或者孩子都比父亲小#ifndef _HEAP_H_#define _HEAP_H_#include #include #include /* *this file is about heap of c-style,and i will offer the interface of push/pop/top/size *but,the pro原创 2016-05-24 12:26:11 · 409 阅读 · 0 评论 -
poj 2431
题意:这道题要求的是最少的加油次数,告诉你n个加油站的距离和每个加油站可以加的油。让你求能不能到达终点,如果可以的话最少需要加多少油。 解法:这可以用优先队列来解决。我们想象,当经过一个加油站时,我们不一定加油,但是我们一定可以加油。因为我们到达了这个加油站,所以相应的获得了可以加油的权利,但是我们可以不加,当我们足以行驶到下一个加油站时,我们就可以选择不加,但是当我们无法行驶到下原创 2016-05-24 16:02:48 · 473 阅读 · 0 评论 -
POJ 1251
这道题就是对优先队列的应用。 huffman+priority_queue #include #include #include #include #include #include #include #include using namespace std;int main(){ string in; int count[200]; //原创 2016-05-24 16:41:53 · 427 阅读 · 0 评论 -
poj 1611
题意:输入n,m分别表示学生人数和组数,然后输入m组数据,现在已经知道如果一个小组里面的一个人得病,那么该小组都有可能得病。而且已经知道0号学生已经得病,问:一共有多少人可能得病? 解法:并查集 用树高代表集合的大小,最后输出根为0的小组的人数就可以了!#include #include#define max_n 30005int father[m原创 2016-05-26 14:33:35 · 544 阅读 · 0 评论 -
poj 2542
题意:给定多组(x,y),x和y的信仰相同,估计信仰的数量 解法:并查集,初始化ans为总人数,当添加一对(x,y)后,判断,如果已经是一组了,不做,如果不是,ans-1.#include #include #include /* *This file is about union set operations. *and the program原创 2016-05-26 14:49:30 · 666 阅读 · 0 评论