C++set

C++ STL的set是有序的,一般背后是红黑树的实现。
输出会从小到大。
#include <iostream>
#include <set> using namespace std;
int main()
{
 int a[]={1,2,5,9,6,4};
 int len=sizeof(a)/sizeof(int);
 set<int> s(a,a+len);
 for(set<int>::iterator i=s.begin();i!=s.end();i++) cout<<*i<<" ";
 return 0;
}
输出
1 2 4 5 6 9
 
无序的set如今已经被加入ISO C++2011标准中
unordered_set<int> a;

字符串能够用
set<string> a;//C++的字符串
set<char *> a;//C式0结尾的字符串

STL的queue队列一般用heap堆实现的。能够做为堆使用。
堆具备最大最小极向性,multiset,multimap不能用来代替堆
相关文章
相关标签/搜索