set一般插入元素时,默认使用关键字类型的<
运算符来比较两个关键字,故一般插入后为升序,举个例子:
int main(int argc, char* argv[])
{set<int> s;s.insert(2);s.insert(1);s.insert(3);set<int>::iterator it = s.begin();for (; it != s.end(); ++it){cout << *it;}return 0;
}
如果想元素按降序排序,代码如下:
#include<set>
#include<functional>int main(int argc, char* argv[])
{set<int, greater<int>> s;s.insert(2);s.insert(1);s.insert(3);set<int, greater<int>>::iterator it = s.begin();for (; it != s.end(); ++it){cout << *it;}return 0;
}