关于set中存放的元素的排列顺序

1. set中存放的为数(整数,浮点数......)
在set中会按从小到大排列这些数
例:

#include <iostream>
#include <set>
using namespace std;

int main()
{
 set<float> a;
 a.insert(12.3);
 a.insert(60.3);
 a.insert(32.3);
 a.insert(822.1);
 a.insert(41140.1);
 a.insert(44449.8);
 set<float>::iterator p2a= a.begin();
 while(p2a!= a.end())
 {cout<< *p2a<< endl; ++p2a;}
 return 0;
}

[142]stxtopt05: /remote/us01home37/taoz/works/testset/ > g++ test.cc
[143]stxtopt05: /remote/us01home37/taoz/works/testset/ > ./a.out
12.3
32.3
60.3
822.1
41140.1
44449.8

2. set 中存放的为string
存入的string会按字母表顺序排列
例:

#include <iostream>
#include <string>
#include <set>
using namespace std;

int main()
{
 set<string> a;
 a.insert("bcdefg");
 a.insert("acdefg");
 a.insert("abdefg");
 a.insert("dabcefg");
 a.insert("bcdfg");
 a.insert("fabcdeg");
 set<string>::iterator p2a= a.begin();
 while(p2a!= a.end())
 {cout<< *p2a<< endl; ++p2a;}
 return 0;
}

[147]stxtopt05: /remote/us01home37/taoz/works/testset/ > g++ test.cc
[148]stxtopt05: /remote/us01home37/taoz/works/testset/ > ./a.out
abdefg
acdefg
bcdefg
bcdfg
dabcefg
fabcdeg

其他类型大家可以用上面的程序试试,至于存放类的话,还可以自己定义排列规则
所以,将数存入set中不仅可以去重,还可以排序哦

posted on 2012-08-13 13:37 章涛 阅读(1868) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理


<2012年8月>
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678

导航

统计

常用链接

留言簿

随笔档案

搜索

最新评论

阅读排行榜

评论排行榜