随笔分类 -  数据结构与算法

trie树
摘要:杭电1251(统计难题)给出n个单词,然后无数个询问,每次输入一行字符串,求以该字符串为前缀的单词的数量.#include#include#include#include#include#include#include#include#include#include#include#include#... 阅读全文
posted @ 2015-03-11 22:32 Unico 阅读(147) 评论(0) 推荐(0)
C++库常用函数一览
摘要:本文中提到的函数库有: 1.标准C++库字符串类std::string的用法begin得到指向字符串开头的Iteratorend得到指向字符串结尾的Iteratorrbegin得到指向反向字符串开头的Iteratorrend得到指向反向字符串结尾的Iteratorsize得到字符串的大小l... 阅读全文
posted @ 2015-03-07 11:32 Unico 阅读(1020) 评论(0) 推荐(0)
pair的用法
摘要:pair的类型: pair 是 一种模版类型。每个pair 可以存储两个值。这两种值无限制。也可以将自己写的struct的对象放进去。。 pair p; pair p; pair p; 都可以。。。应用:如果一个函数有两个返回值 的话,如果是相同类型,就可以用数组返回,如果是不同类型,就可以自己... 阅读全文
posted @ 2014-11-28 19:48 Unico 阅读(460) 评论(0) 推荐(0)
list链表的用法
摘要:Lists将元素按顺序储存在链表中. 与 向量(vectors)相比, 它允许快速的插入和删除,但是随机访问却比较慢.assign() 给list赋值back() 返回最后一个元素begin() 返回指向第一个元素的迭代器clear() 删除所有元素empty() 如果list是空的则返回truee... 阅读全文
posted @ 2014-11-28 19:40 Unico 阅读(684) 评论(0) 推荐(0)
string的用法
摘要:标准C++中的string类的用法总结相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用。但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯定的。也许有人会说,即使不用MFC框架,也可以想办法使用MFC... 阅读全文
posted @ 2014-10-23 21:21 Unico 阅读(141) 评论(0) 推荐(0)
set的用法
摘要:set集合容器:实现了红黑树的平衡二叉检索树的数据结构,插入元素时,它会自动调整二叉树的排列,把元素放到适当的位置,以保证每个子树根节点键值大于左子树所有节点的键值,小于右子树所有节点的键值;另外,还得保证根节点左子树的高度与右子树高度相等。平衡二叉检索树使用中序遍历算法,检索效率高于vector、... 阅读全文
posted @ 2014-10-15 20:23 Unico 阅读(204) 评论(0) 推荐(0)
map的用法
摘要:最全的c++map的用法此文是复制来的0.01.map最基本的构造函数;mapmapstring;mapmapint;mapmapstring;mapmapchar;mapmapchar;mapmapint;2.map添加数据;mapmaplive;1.maplive.insert(pair(102... 阅读全文
posted @ 2014-10-07 19:48 Unico 阅读(277) 评论(0) 推荐(0)
数论公式
摘要:斯特灵公式是一条用来取n阶乘近似值的数学公式。一般来说,当n很大的时候,n阶乘的计算量十分大,所以斯特灵公式十分好用,而且,即使在n很小的时候,斯特灵公式的取值已经十分准确。公式为:以下等式或者不等式均可以用数学归纳法予以证明!1 + 3 + 5 + ... + (2n - 1) = n^21*2 ... 阅读全文
posted @ 2014-10-07 09:26 Unico 阅读(237) 评论(0) 推荐(0)
bitset
摘要:bitset类简化了位集的处理,有些程序要使用二进制位的有序集来保存一组项或条件的标志位,可以考虑使用bitset。需要的文件:#include Using std::bitsetlbitset对象的定义和初始化定义bitset时,要明确bitset有多少位:bitset bitvec// 32位... 阅读全文
posted @ 2014-09-26 20:13 Unico 阅读(139) 评论(0) 推荐(0)
C++ stack、queue的用法
摘要:C++ STL--stack/queue 的使用方法1、stackstack 模板类的定义在头文件中。stack 模板类需要两个模板参数,一个是元素类型,一个容器类型,但只有元素类型是必要的,在不指定容器类型时,默认的容器类型为deque。定义stack 对象的示例代码如下:stack s1;sta... 阅读全文
posted @ 2014-09-05 20:37 Unico 阅读(258) 评论(0) 推荐(0)
优先队列(Priority Queue)的用法
摘要:优先队列用法在优先队列中,优先级高的元素先出队列。标准库默认使用元素类型的qi;通过,greater>qi2;其中第二个参数为容器类型。第二个参数为比较函数。故示例2中输出结果为:2 3 5 6 9第三种方法:自定义优先级。structnode{friendbooloperator(noden1,n... 阅读全文
posted @ 2014-09-05 20:32 Unico 阅读(1108) 评论(0) 推荐(0)
c++中 vector 的用法
摘要:在c++中,vector是一个十分有用的容器,下面对这个容器做一下总结。1 基本操作(1)头文件#include.(2)创建vector对象,vector vec;(3)尾部插入数字:vec.push_back(a);(4)使用下标访问元素,cout::iterator it;for(it=vec.... 阅读全文
posted @ 2014-09-05 20:29 Unico 阅读(180) 评论(0) 推荐(0)