C++研究
C++细节深度探索及软件工程
C++博客
::
首页
::
新随笔
::
联系
::
聚合
::
管理
::
37 随笔 :: 0 文章 :: 74 评论 :: 0 Trackbacks
<
2008年1月
>
日
一
二
三
四
五
六
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
公告
致力于百度无线搜索研发。
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(8)
给我留言
查看公开留言
查看私人留言
随笔分类
(19)
ACM(1)
(rss)
Algorithm(4)
(rss)
Design Patterns & Engeering(4)
(rss)
STL(4)
(rss)
小技巧(6)
(rss)
随笔档案
(37)
2010年3月 (1)
2009年8月 (1)
2009年3月 (1)
2008年10月 (1)
2008年3月 (1)
2008年2月 (2)
2008年1月 (3)
2007年12月 (2)
2007年9月 (4)
2007年7月 (2)
2007年6月 (6)
2007年5月 (2)
2007年4月 (11)
相册
深爱着的母校-天津大学
收藏夹
Goodies
(rss)
好友连接
丑石
(rss)
赵博的Blog连接
学术算法研究
最新随笔
1. [征集]如果百度无线搜索计划产出新产品,你最希望是什么?
2. 百度阿拉丁指亮暗网,何为暗网?
3. 关于http://wap.baidu.com招唤
4. 转入Apache2开发,淡忘windows了
5. VC的Dialog或FormView中的控件不能刷新
6. 关闭Linux下终端或Vi的BEEP声
7. unbuntu Linux下切换GDM与KDM
8. 求有序序列公共部分(集合交集的O(n)复杂度求法)
9. 对包含Struct的Vector就其中的一种属性排序
10. B树ReadKey关键点的操作与实现
搜索
积分与排名
积分 - 69540
排名 - 329
最新评论
1. re: 求有序序列公共部分(集合交集的O(n)复杂度求法)
取交集可不是这么取的吧?一趟循环即可!
--黄智
2. re: Mysql++使用手册及用法规范[未登录]
好东西
--乐乐
3. re: Mysql++使用手册及用法规范
好东西,值得鼓励
--njf
4. re: Mysql++使用手册及用法规范
必然顶楼主!!!!!!!
--扩大客户缴费
5. re: Mysql++使用手册及用法规范
谢了~ 瞅瞅先!
--kongkong
阅读排行榜
1. 有关 C++ 嵌套类 (7791)
2. 关于http://wap.baidu.com招唤(6986)
3. C++ streams (How to use ostream & istream ?)(6863)
4. Mysql++使用手册及用法规范(6543)
5. VC的Dialog或FormView中的控件不能刷新(3083)
6. [资料]STL种容器的基本使用方法(2696)
7. string 类的使用方法(2560)
8. 精炼循环右移(2481)
9. 求有序序列公共部分(集合交集的O(n)复杂度求法)(2148)
10. 对包含Struct的Vector就其中的一种属性排序(2124)
评论排行榜
1. Mysql++使用手册及用法规范(25)
2. Some algorithms about judging a prime .(8)
3. 精炼循环右移(6)
4. Implement "GOF's Builder pattern" Using C++(Series of Gof patterns using C++ 4th article) (4)
5. Implement "GOF's Adapter pattern" Using C++(Series of Gof patterns using C++ 2nd article) (4)
6. [征集]如果百度无线搜索计划产出新产品,你最希望是什么?(4)
7. 有关 C++ 嵌套类 (3)
8. C++ streams (How to use ostream & istream ?)(3)
9. 关于http://wap.baidu.com招唤(3)
10. 百度阿拉丁指亮暗网,何为暗网?(2)
对包含Struct的Vector就其中的一种属性排序
#include
<
iostream
>
#include
<
vector
>
#include
<
algorithm
>
using
namespace
std;
struct
StructTerm
{
int
TermID;
float
Occurency;
}
;
typedef vector
<
StructTerm
>
TERMS;
class
Comparer
{
public
:
bool
operator
() (
const
StructTerm
&
va1,
const
StructTerm
&
va2)
{
return
va1.Occurency
>
va2.Occurency;
}
}
;
int
main()
{
TERMS terms;
StructTerm s;
s.TermID
=
1
;
s.Occurency
=
0.8
;
terms.push_back(s);
s.TermID
=
2
;
s.Occurency
=
0.6
;
terms.push_back(s);
s.TermID
=
2000
;
s.Occurency
=
0.68
;
terms.push_back(s);
sort(terms.begin(), terms.end(), Comparer());
for
(
int
i
=
0
; i
<
terms.size();
++
i)
{
cout
<<
terms[i].TermID
<<
"
"
;
}
cout
<<
endl;
}
posted on 2008-01-15 21:03
常兴龙
阅读(2124)
评论(2)
编辑
收藏
引用
所属分类:
STL
评论
#
re: 对包含Struct的Vector就其中的一种属性排序
2008-04-24 14:49
ruansun
这样写固然可以,但是如果要对TermID排序,还得写
class Comparer_termid
{
public:
bool operator () (const StructTerm & va1, const StructTerm & va2)
{
return va1.TermID> va2.TermID;
}
};
如果参数列表有100个的话,是不是每一个都需要一个上面的class定义才能排序呢?
怎么写才能更简单呢?
回复
更多评论
#
re: 对包含Struct的Vector就其中的一种属性排序
2008-08-14 09:32
xx
应该没什么特别简单的办法了吧。这样不挺好吗?我一般都是把Comparer
放到StructTerm里面,用的时候用StructTerm::Comparer
回复
更多评论
刷新评论列表
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
求有序序列公共部分(集合交集的O(n)复杂度求法)
对包含Struct的Vector就其中的一种属性排序
[资料]STL种容器的基本使用方法
C++ streams (How to use ostream & istream ?)
网站导航:
博客园
IT新闻
BlogJava
博问
Chat2DB
管理
Powered by:
C++博客
Copyright © 常兴龙
>
hi的博客