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不能用來代替堆
相關文章
相關標籤/搜索