파일은 단어 스트림을 저장하는 메모리 위치입니다. 파일에는 다양한 단어가 있습니다. 이 프로그램에서는 파일에서 고유한 단어를 모두 찾아 인쇄합니다.
독특한 단어는 파일에서 단어의 출현 횟수가 1개임을 의미합니다.
예를 들어,
Tutorials point is best for programming tutorials.
여기에서 tutorial이라는 단어는 두 번 이상 발생하므로 고유하지 않습니다. 나머지 모든 단어는 고유합니다.
알고리즘
To check for unique words in the given file. Using iterator with two variables : data and occurence. Input : File Step 1 : Read each line from the file and follow step 2 Step 2 : check for the occurence of the word in the data structure using interator.data. Step 2.1 : if data matches increase the occurrence by one corresponding to the data. Step 2.2 : if data does not match add new value and set its occurence to one. Step 3: Iterate over the date structure. And check for occurence value of each value. Step 3.1 : If the occerence is equals to 1 then prints the data corresponding it else do nothing.
예시
#include <bits/stdc++.h> using namespace std; int main(){ char filename[] = "test.txt"; ofstream fs("test.txt", ios::trunc); fs << "tutorials point is best for programming tutorials"; fs.close(); fstream fs("test.txt"); map<string, int> mp; string word; while (fs >> word){ if (!mp.count(word)) mp.insert(make_pair(word, 1)); else mp[word]++; } fs.close(); for (map<string, int> :: iterator p = mp.begin(); p != mp.end(); p++){ if (p->second == 1) cout << p->first << endl; } return 0; }
출력
best for is point Programming