- 博客(14)
- 收藏
- 关注
原创 poj 3253 Fence Repair(哈夫曼)
http://poj.org/problem?id=3253Fence RepairTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 38391 Accepted: 12478DescriptionFarmer John wants to rep
2016-06-28 15:01:53 588
转载 STL之Multimap
multimap 多重映照容器 multimap 与 map 一样,都是使用红黑树对记录型的元素数据,按元素键值的比较关系,进行快速的插入、删除和检索操作,所不同的是 multimap 允许将具有重复键值的元素插入容器。在 multimap 容器中,元素的键值与元素的映照数据的映照关系,是多对多的,因此,multimap 称为多重映照容器。multim
2016-06-28 14:35:46 422
转载 STL之Multiset
Multiset的中文名是多重集合,其实就是集合的扩展版。唯一的不同是集合中一个值只能出现一次,而多重集合中一个值可以出现多次。 粗略看了看MSDN,在STL中,multiset和set的成员函数声明也是基本一样的,一些需要注意的地方是:set::insert(key)的返回值是一个pair,其中pair中的bool成员表明了key被插入之前,set中是否已存在相同
2016-06-28 14:30:06 427
转载 哈夫曼编码原理
哈夫曼(Huffman)编码是一种常用的压缩编码方法,是Huffman于1952年为压缩文本文件建立的。它的基本原理是频繁使用的数据用较短的代码代替,较少使用的数据用较长的代码代替,每个数据的代码各不相同。这些代码都是二进制码,且码的长度是可变的。举个例子:假设一个文件中出现了8种符号S0,S1,S2,S3,S4,S5,S6,S7,那么每种符号要编码,至少需要3比特。假设编码成000,001,01
2016-06-28 13:51:48 3945
原创 康托展开
康托展开是一个全排列到一个自然数的双射,常用于构建哈希表时的空间压缩。 康托展开的实质是计算当前排列在所有由小到大全排列中的顺序,因此是可逆的。以下称第x个全排列是都是指由小到大的顺序。公式:X=a[n]*(n-1)!+a[n-1]*(n-2)!+…+a[i]*(i-1)!+…+a[1]*0!其中,a[i]为整数,并且0公式看起来可能不太明白,其实很简单。。
2016-06-25 23:22:13 605
转载 最大连续子段和
网上很多其他网友的解答都没有描述清楚,最大子序列和一定是连续的,如果不连续,就没有意义了,因为我们只需要扫描一遍数组,输出其中所有正整数即可,他们的和一定是最大的。而之前还有一道题目,求最长递增子序列,这个子序列可以不连续。体现在他们所描述的状态转换方程上面。问题描述: 输入一组整数,求出这组数字子序列和中最大值。也就是只要求出最大子序列的和,不必求出最大的那个序
2016-06-25 20:45:23 907
原创 L2-010. 排座位(并查集水题)
L2-010. 排座位时间限制150 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越布置宴席最微妙的事情,就是给前来参宴的各位宾客安排座位。无论如何,总不能把两个死对头排到同一张宴会桌旁!这个艰巨任务现在就交给你,
2016-06-19 10:10:01 1551
原创 HDU - 1232 畅通工程(并查集水题)
畅通工程Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 44798 Accepted Submission(s): 23766Problem Description某省调查城镇交通状况,得到现有城镇道路
2016-06-18 23:07:23 453
转载 并查集算法总结
这个文章是几年前水acm的时候转的, 当时也不知道作者是谁, 要是有人知道的话说一下吧并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告
2016-06-18 20:59:16 601
转载 STL容器之优先队列
优先级队列,以前刷题的时候用的比较熟,现在竟然我只能记得它的关键字是priority_queue(太伤了)。在一些定义了权重的地方这个数据结构是很有用的。先回顾队列的定义:队列(queue)维护了一组对象,进入队列的对象被放置在尾部,下一个被取出的元素则取自队列的首部。priority_queue特别之处在于,允许用户为队列中存储的元素设置优先级。这种队列不是直接将新元素放置在队列
2016-06-11 15:46:06 510
转载 C++中常用的STL 函数
学完c++快一年了,感觉很有遗憾,因为一直没有感觉到c++的强大之处,当时最大的感觉就是这个东西的输入输出比C语言要简单好写。 后来我发现了qt,opencv,opengl,原来,c++好玩的狠。 在这些图形库之外,最常用的可能就是STL,这个东西由于当时学c++的时候迷迷糊糊,完全是一头雾水,上学期数据结构之后开始有点儿开窍了,现在把才c++STL中常用的函数,用法贴一下,也
2016-06-10 21:17:52 776
原创 1025. 反转链表 (25)
1025. 反转链表 (25)时间限制300 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者CHEN, Yue给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转。例如:给定L为1→2→3→4→5→6,K为3
2016-06-10 20:55:53 874
原创 HDU - 1052 Tian Ji -- The Horse Racing(简单贪心)
Tian Ji -- The Horse RacingTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 25569 Accepted Submission(s): 7528Problem Description
2016-06-09 11:23:06 482
原创 二叉树的层次遍历
终于自己能够写出二叉树的前序, 中序, 后序和层次遍历了,还是有点开心的。才发现原来建树是那么简单,只要理解好递归就差不多了。之前转过前中后序的遍历,现在就记下层次遍历吧。用pat上的题当例子吧。https://www.patest.cn/contests/gplt/L2-006L2-006. 树的遍历 时间限制400 ms内存限制
2016-06-05 20:37:42 1780
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人