两句话中不常见单词

    科技2022-07-14  129

    //给定两个句子?A?和?B?。?(句子是一串由空格分隔的单词。每个单词仅由小写字母组成。) // //如果一个单词在其中一个句子中只出现一次,在另一个句子中却没有出现,那么这个单词就是不常见的。 // //返回所有不常用单词的列表。 // //您可以按任何顺序返回列表。 // //来源:力扣(LeetCode) //链接:https ://leetcode-cn.com/problems/uncommon-words-from-two-sentences //著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 //leetcode不支持boost库 //#include<boost/algorithm/string.hpp> //执行用时:0ms class Solution { public: vector<string> uncommonFromSentences(string A, string B) { vector<string> ret; vector<string> v(100, ""); unordered_map<string, int> um; //只出现一次,合并起来统计出现次数为一次的单词即可 A = A + ' ' + B; //boost::split(v,A,boost::is_any_of(' ')); int index = 0; //分割单词 for (const auto& e : A) { if (e == ' ') { ++index; } else { v[index].push_back(e); } } //统计次数 for (const auto& e : v) { if (e != "") ++um[e]; else break; } for (const auto& e : um) { if (e.second == 1) ret.push_back(e.first); } return ret; } };
    Processed: 0.013, SQL: 8