如何在二维向量中使用计数
Posted
技术标签:
【中文标题】如何在二维向量中使用计数【英文标题】:How to use Count in 2D Vector 【发布时间】:2017-07-16 11:11:28 【问题描述】:我有一个二维字符串向量,想计算某个单词重复了多少次。例如:
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
int main()
vector< vector<string> > vec(4, vector<string>(4, "word") );
count( vec.begin(), vec.end(), "certain word" );
但是上面给出了错误。我该怎么做?
【问题讨论】:
您必须遍历外部向量才能获得内部向量。然后你必须遍历内部向量来计算字符串中的“特定单词”。 内部向量是否已经包含单个单词,还是包含多个单词的字符串? @user0042 是的,只有单个单词。 @mhm 那么你在下面找到正确答案。 【参考方案1】:您需要对搜索单个向量运行计数并对结果求和:
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
int main()
vector< vector<string> > vec(4, vector<string>(4, "string of words") );
size_t sum = 0;
for(auto& v: vec)
sum += count( v.begin(), v.end(), "certain word" );
【讨论】:
您忘记更新count
呼叫。而且它不计算 strings. 中的单词
它工作了.. 必须将 vec.begin() ... 更改为 v.begin()... 非常感谢先生。以上是关于如何在二维向量中使用计数的主要内容,如果未能解决你的问题,请参考以下文章