Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Search 试图过滤向量中的元素,但不断出错_Search_Binary Tree - Fatal编程技术网

Search 试图过滤向量中的元素,但不断出错

Search 试图过滤向量中的元素,但不断出错,search,binary-tree,Search,Binary Tree,我试着根据向量的内容过滤两个向量的字符串。我的意思是,我的向量vector1包含[“01”、“11”、“10”]和另一个向量vector2,它是使用选项()函数递归创建的,用于根据数字=2生成二进制数[“00”、“01”、“11”、“10”]。我想把它们和vector2中的值(而不是vector1中的值)排序到另一个向量字符串。因此,使用上面的示例,我希望第三个向量包含[“00”],它应该是一个字符串 这是我的代码,但在最后一个for循环中,我实际执行了过滤,这给了我一个错误 #include

我试着根据向量的内容过滤两个向量的字符串。我的意思是,我的向量vector1包含
[“01”、“11”、“10”]
和另一个向量vector2,它是使用
选项()
函数递归创建的,用于根据数字=2生成二进制数
[“00”、“01”、“11”、“10”]
。我想把它们和vector2中的值(而不是vector1中的值)排序到另一个向量字符串。因此,使用上面的示例,我希望第三个向量包含
[“00”]
,它应该是一个字符串

这是我的代码,但在最后一个for循环中,我实际执行了过滤,这给了我一个错误

#include <iostream>
#include <bitset>
#include <vector>

std::vector<std::string> options(int width)
{
    if (width == 1)
    {
        return {"0", "1"};
    }
    std::vector<std::string> rest = get_combs(width-1);
    std::vector<std::string> appended;
    for (const auto& s: rest)
    {
        appended.push_back(s + '0');
        appended.push_back(s + '1');
    }
    return appended;
}

int main()
{
    std::vector<std::string> vector1 {"01", "11", "10"};
    std::vector<std::string> vector2 = get_combs(2);
  
    for (int i = 0; i < vector2.size(); i++){
        if ( vector2[i] in  vector1 ){  <-- error
            // ...
        }
    }

}
#包括
#包括
#包括
标准::矢量选项(整型宽度)
{
如果(宽度==1)
{
返回{“0”,“1”};
}
标准::矢量静止=获取梳(宽度-1);
std::附加向量;
用于(const auto&s:rest)
{
附加。将_向后推(s+'0');
附加。推回(s+‘1’);
}
附加返回;
}
int main()
{
向量向量1{“01”、“11”、“10”};
std::vector vector2=get_combs(2);
对于(int i=0;i如果(vector1中的vector2[i]){C++在
运算符中没有
。编译器不识别它,但也不知道它在那里,因此它会给出一些其他随机错误

bool contains =false;
for (auto item : fvalues) {
 if (item == xbarl[i]) {
  contains = true
}
}
 if(contaisn){
   ...


C++不是Python,我们在< /Cord>关键字中没有<代码> .<代码> >你把C++与Python混淆了吗?可以玩一些技巧来制作<代码> XBAR[i]在Falue工作中,但没有这样的技巧< <代码> >在C++中没有意义,或者对于你的问题,它看起来像 GETSKOMBS正在工作,这意味着它应该被删除。请看如何制作A。如果你的向量被排序,你可以使用<代码> SETIOGION/<代码>来解决这个问题,没有一个循环。请不要VAND。将你的问题具体化。问题不仅是为了让你得到答案,也是为了将来的读者。即使问题以重复形式结束,也可以作为其他具有类似问题值的人的切入点。包含(…)确保你正在使用C++20@BigBasherSucks为什么不能使用算法模块?@BigBasherSucks如果条目==myitem编辑ANSWR,则
std::vector
成员函数
包含的
\include
@BigBasherSucks for(auot item:vector)不需要

bool contains =false;
for (auto item : fvalues) {
 if (item == xbarl[i]) {
  contains = true
}
}
 if(contaisn){
   ...