STL
Red_Flame
热爱C/C算法Windwos编程.
展开
-
STL set
set是一个集合,它里面的元素是唯一的. multiset也是一个集合,但里面的元素可以出现多次. 集合中一些函数: begin(); //返回第一个元素的迭代器(指针) rbegin(); //返回最后一个元素的反向迭代器 end(); //返回最后一个元素,注意这里的最后一个元素并不是集合内部的,而是集合最后一个元素的下一个迭代器 rend(); //返回第一个元素的反原创 2012-12-02 15:14:28 · 428 阅读 · 0 评论 -
STL 优先级队列
STL中优先级队列的模版声明中有三个参数,priority_queue,故名思义,Type为数据类型,Container则是必须用数组实现的容器,常见的vector,deque,但不能用List,STL默认的是vector,后面的Functional为比较方式,默认的基本类型为数值大的优先。即首元素是最大值。 那么在解决问题时,有时会用到最小堆,即优先级队列中首元素为最小的元素,对于基本类型,可原创 2012-11-18 18:20:33 · 1007 阅读 · 0 评论 -
全排列库函数
今天看书了发现了一个STL中的排列函数,next_permutation 给出两个示例 #include #include #include using namespace std; int main() { int n,p[10]; cin>>n; for(int i=0;i cin>>p[i]; sort(p,p+n); do原创 2012-10-20 14:45:24 · 1214 阅读 · 0 评论 -
STL排序
0 前言: STL,为什么你必须掌握 对于程序员来说,数据结构是必修的一门课。从查找到排序,从链表到二叉树,几乎所有的算法和原理都需要理解,理解不了也要死记硬背下来。幸运的是这些理论 都已经比较成熟,算法也基本固定下来,不需要你再去花费心思去考虑其算法原理,也不用再去验证其准确性。不过,等你开始应用计算机语言来工作的时候,你会 发现,面对不同的需求你需要一次又一次去用代码重复实现这些已经成熟转载 2013-04-07 20:34:28 · 562 阅读 · 0 评论 -
STL 堆操作
需要头文件 #include 常用的三个函数 make_heap(),pop_heap(),push_heap(),sort_heap(). make_heap() 函数原型: void make_heap(first_pointer,end_pointer,compare_function). 前两个参数是迭代器的范围,第三个参数是比较函数,默认为最大堆 pop_heap() 函数原原创 2013-04-09 20:27:32 · 870 阅读 · 0 评论