- 论坛徽章:
- 0
|
刚看到一段程序 。个人认为写的很不错:统计英文文章里面单词的频率:
- #include <iostream>
- #include <vector>
- #include <map>
- #include <fstream>
- #include <iterator>
- #include <stdlib.h>
- using namespace std;
- ifstream input("XXXX");
- map<string, int> s_num;
- for (istream_iterator<string> iter(input); iter != istream_iterator<string>(); ++iter)
- {
- s_num[*iter] += 1;
- }
- multimap<int, string> num_s;
- for (map<string, int>::iterator iter = s_num.begin(); iter != s_num.end(); ++iter)
- {
- num_s.insert(make_pair(iter->second, iter->first));
- }
- int i = 0;
- for (multimap<int, string>::reverse_iterator iter = num_s.rbegin(); (i < 20) && (iter != num_s.rend()); ++i, ++iter)
- {
- cout << iter->second << " " << iter->first << "\r\n";
- }
复制代码 |
|