假设我有以下内容:
我在这里查看了这篇文章locate sub-vector<string> in another vector<string>,但我不能使用C++11功能,而且这个答案也没有解决我的问题(例如,对于我的示例2,它会返回false)。
两件事:我的实现是否正确?是否有更简单的方法使用STL功能或类似的东西来实现它?
假设我有:
std::vector<string> group;
std::vector<string> subGroup;
关于这两个向量的一些属性:
1)所有元素都是唯一的。
2)它们没有排序,也不能排序。
我需要检查组是否包含子组。如果包含,则返回true,否则返回false。
举例:
group = {"A","B","C","D"},subGroup = {"A","D","E"} -> 答案为false
group = {"A","E","C","D"},subGroup = {"A","D","E"} -> 答案为true
我的当前实现方式是:
int cont=0;
if(subGroup.size() > group.size())
return false;
else{
for(int i=0; i<subGroup.size(); i++){
for(int j=0; j<group.size(); j++){
if(subGroup[i] == group[j]{
cont++;
}
}
}
if (cont == subGroup.size())
return true;
return false;
}
我在这里查看了这篇文章locate sub-vector<string> in another vector<string>,但我不能使用C++11功能,而且这个答案也没有解决我的问题(例如,对于我的示例2,它会返回false)。
两件事:我的实现是否正确?是否有更简单的方法使用STL功能或类似的东西来实现它?