原帖见:
http://community.csdn.net/Expert/TopicView3.asp?id=5023839
题目:
输出每个单词出现的次数
比如:aaa,bbb,ccc,aaa,avc,aaa.
那么aaa为3,bbb为1.....
在输出时,还要将输入单词按首字母排列
解答:
回复人:du51(郁郁思扬) (
) 信誉:100 2006-9-15 15:10:45 得分:0
/**/
/*------------------------------------*/
#include
<
iostream
>
#include
<
string
>
#include
<
vector
>
#include
<
sstream
>
#include
<
algorithm
>
#include
<
functional
>
#include
<
cctype
>
#include
<
iterator
>
using
namespace
std;
int
main()

...
{
string test="aaa,bbb,ccc,aaa,avc,aaa.ccc wwwww www.csdn.net www.warcraft.com";
replace_if(test.begin(),test.end(),not1(ptr_fun(::isalpha)),' ');
istringstream ss(test);
vector<string> vec;
copy(istream_iterator<string>(ss),istream_iterator<string>(),back_inserter(vec));
sort(vec.begin(),vec.end());
for(vector<string>::iterator it=vec.begin(),start=vec.begin();it!=vec.end();start=it)

...{
if((it=adjacent_find(start,vec.end(),not_equal_to<string>()))!=vec.end())++it;
cout<<*start<<" "<<distance(start,it)<<endl;
}
system("PAUSE");
return 0;
}