1. 程式人生 > >[CareerCup] 17.9 Word Frequency in a Book 書中單詞頻率

[CareerCup] 17.9 Word Frequency in a Book 書中單詞頻率

17.9 Design a method to find the frequency of occurrences of any given word in a book. 

這道題讓我們找書中單詞出現的頻率,那麼首先需要搞清楚的問題是,只需要統計一個單詞,還是多個單詞。如果是一個單詞的話,那直接就遍歷所有單詞直接統計即可,如果是多個,就需要建立雜湊表來建立每個單詞和其出現次數之間的對映,然後再來查詢即可,參見程式碼如下:

unordered_map<string, int> make_dictionary(vector<string> book) {
    unordered_map
<string, int> res; for (auto word : book) { for (auto &a : word) a = tolower(a); ++res[word]; } return res; } int get_frequency(unordered_map<string, int> m, string word) { if (m.empty() || word.empty()) return -1; for (auto &a : word) a = tolower(a);
return m[word]; }