Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/125.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
C++ 检查向量中的一组值_C++_Vector_Stl Algorithm - Fatal编程技术网

C++ 检查向量中的一组值

C++ 检查向量中的一组值,c++,vector,stl-algorithm,C++,Vector,Stl Algorithm,我有一组数字: {2, 6, 8} 我想检查向量中是否有这些数字: std::vector<int> myVector; std::vector myVector; 我知道我可以使用算法的std::find: auto iter1 = std::find(myVector.begin(), myVector.end(), 2); auto iter2 = std::find(myVector.begin(), myVector.end(), 6); auto iter3 = s

我有一组数字:

{2, 6, 8}
我想检查向量中是否有这些数字:

std::vector<int> myVector;
std::vector myVector;
我知道我可以使用算法的std::find:

auto iter1 = std::find(myVector.begin(), myVector.end(), 2);
auto iter2 = std::find(myVector.begin(), myVector.end(), 6);
auto iter3 = std::find(myVector.begin(), myVector.end(), 8);

if(iter1 != myVector.end() || iter2 != myVector.end() || iter3 != myVector.end())
    std::cout << "A desired value was found in the vector!"
auto iter1=std::find(myVector.begin(),myVector.end(),2);
auto iter2=std::find(myVector.begin(),myVector.end(),6);
auto iter3=std::find(myVector.begin(),myVector.end(),8);
如果(iter1!=myVector.end()| | iter2!=myVector.end()| | iter3!=myVector.end())

std::cout如果要检查“集合”中是否包含数字,请使用
std::set

std::set<int> myset = {3,4,6,34,2,6,78,8,5,0};
if (myset.count(5) > 0) {
   std::cout << "Hooray!" << std::endl;
}
std::set myset={3,4,6,34,2,6,78,8,5,0};
如果(myset.count(5)>0){

std::cout如果要检查“集合”中是否包含数字,请使用
std::set

std::set<int> myset = {3,4,6,34,2,6,78,8,5,0};
if (myset.count(5) > 0) {
   std::cout << "Hooray!" << std::endl;
}
std::set myset={3,4,6,34,2,6,78,8,5,0};
如果(myset.count(5)>0){
std::cout您可以使用:

std::vector myVector=/*something*/;
向量值={2,6,8};
auto first\u found=std::find\u first\u of(std::begin(myVector),std::end(myVector),
标准::开始(值),标准::结束(值);
if(找到的第一个向量!=std::end(myVector)){
//找到一个!
}
您可以使用:

std::vector myVector=/*something*/;
向量值={2,6,8};
auto first\u found=std::find\u first\u of(std::begin(myVector),std::end(myVector),
标准::开始(值),标准::结束(值);
if(找到的第一个向量!=std::end(myVector)){
//找到一个!
}

如果您的数据绝对没有进一步的结构或信息,那么就没有(复杂性方面的)。您必须遍历搜索空间和数据空间的整个叉积。当然,如果找到结果,您可以提前退出,但在最坏的情况下,请想象一个不包含任何搜索项的随机数据集合。如果您的数据中绝对没有进一步的结构或信息,则不会(复杂度方面)。您必须遍历搜索空间和数据空间的整个叉积。当然,如果找到结果,您可以提前退出,但在最坏的情况下,请想象一个不包含任何搜索项的随机数据集合。egggggelent。谢谢,先生。egggggelent。谢谢,先生。