글 에서 같은 단어의 개 수 를 통계 하 다.

1283 단어 C&&C++STL
STL 의 multimap 를 이용 하여 구현:
#include 
#include 
#include 
#include 
#include 

using namespace std;

template 
void print_map (const T& m)
{
	T::const_iterator p = m.begin();
	for (; p!=m.end(); ++p)
	{
		cout << (p->second) << ":" << (p->first) << endl;
	}
}

class MyString : public string
{
	friend bool operator < (const MyString& ms1, const MyString& ms2)
	{
		int i;
		string s1 = ms1;
		string s2 = ms2;
		for (i=0; i='A' && c<='Z' || c>='a' && c<='z'))
		{
			c = ' ';
		}
		ss.put(c);
	}

	MyString word;
	map words;
	
	while (ss >> word)
		++words[word];

	multimap > mwords;
	for (map::iterator p=words.begin(); p!=words.end(); ++p)
	{
		pair pa(p->second, p->first);
		mwords.insert(pa);
	}
	print_map(mwords);

	return 0;
}

결과 의 구 조 는:

좋은 웹페이지 즐겨찾기