精华内容
下载资源
问答
  • t see Vector class. I'm afraid I will not be able to compile code. <p>Also, Vector is not highlighted, just like any unknown or unreachable definition.</p><p>该提问来源于开源项目:fdorg/...
  • vectorfind

    2020-01-21 18:01:41
    其实用于vectorfind在头文件 algorithm里呢 这个find有点特殊 没有string的好用 不过没办法啦 看代码就OK vector<int> a{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int t; cin >> t; //find(迭代...

    大家可能都知道string set map 的find
    其实用于vector的find在头文件 algorithm里呢
    这个find有点特殊 没有string的好用 不过没办法啦
    看代码就OK

    
        vector<int> a{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
        int t;
        cin >> t;
        //find(迭代器 , 迭代器 , n);
        //返回的也是迭代器类型的 
        //用auto更方便
        auto ans = find(a.begin(), a.end(), t);
        // auto ans = find(a.begin() + n, a.end(), t);
        int place;
        //强制转换一下
        place = int(ans - a.begin());
        cout << place;
        return 0;
    
    
    展开全文
  • c++中vector find使用

    万次阅读 多人点赞 2017-03-25 16:45:12
    c++中vector find使用

    c++中vector find使用


    不同于map(map有find方法),vector本身是没有find这一方法,其find是依靠algorithm来实现的。

    话不多说,上代码:

    #include <iostream>
    #include <algorithm>
    #include <vector>
    
    int main()
    {
        using namespace std;
    
        vector<int> vec;
    
        vec.push_back(1);
        vec.push_back(2);
        vec.push_back(3);
        vec.push_back(4);
        vec.push_back(5);
        vec.push_back(6);
    
        vector<int>::iterator it = find(vec.begin(), vec.end(), 6);
    
        if (it != vec.end())
            cout<<*it<<endl;
        else
            cout<<"can not find"<<endl;
    
        return 0;
    }
    

    记着要包含algorithm这一头文件,其定义了find这一函数。

    资料参考:http://blog.csdn.net/huangyimin/article/details/6133650

    建议大家还是自己手动敲一下,看过仅仅是看过,敲一次能映像深刻不少呢。
    展开全文
  • vector find问题

    2017-08-08 14:38:33
    find返回第一个符合条件的元素,如果有多个元素符合条件,如果把符合条件的元素存到一个新的vector中?我不想for遍历,然后再一个一个插入到新vector中,有没有方便一点的办法?
  • STL vector find and sort vector 的查找和排序 这两者都需要头文件 algorithm 如果需要对 STL 中的 vector 进行排序和查找方法如下: // iterator_back_inserter.cpp // compile with: /EHsc #include #include...

    STL vector find and sort vector 的查找和排序

    这两者都需要头文件 algorithm

    如果需要对 STL 中的 vector 进行排序和查找方法如下:

    // iterator_back_inserter.cpp
    // compile with: /EHsc
    #include <iterator>
    #include <vector>
    #include <iostream>
    #include <algorithm>
    
    bool Comp(const int &a,const int &b)
    {
       return a > b ;
    }
    
    void main( )
    {
       using namespace std;
       int i;
    
       vector<int> vec;
       for(i=0;i<3;++i)
       {
          vec.push_back(5-i);
       }
       
       vector<int>::iterator vIter;//see annotation above
       cout << "The initial vector vec is: ( ";
       for ( vIter = vec.begin ( ) ; vIter != vec.end ( ); vIter++)
          cout << *vIter << " ";
       cout << ")." << endl;
    
       // Insertions can be done with template function
       back_insert_iterator<vector<int>> backiter(vec);//see annotation above
       *backiter = 30;
       backiter++;
       *backiter = 40;
    
       // Alternatively, insertions can be done with the
       // back_insert_iterator member function
       back_inserter ( vec ) = 500;
       back_inserter ( vec ) = 600;
    
       cout << "After the insertions, the vector vec is: ( ";
       for ( vIter = vec.begin ( ) ; vIter != vec.end ( ); vIter++ )
          cout << *vIter << " ";
       cout << ")." << endl;
    
    	//using default compare
    	sort(vec.begin(),vec.end());
       cout << "After sort, the vector vec is: ( ";
       for ( vIter = vec.begin ( ) ; vIter != vec.end ( ); vIter++ )
          cout << *vIter << " ";
       cout << ")." << endl;
    	//add customized specified compare function to compare
    	sort(vec.begin(),vec.end(),Comp);
       cout << "After sort, the vector vec is: ( ";
       for ( vIter = vec.begin ( ) ; vIter != vec.end ( ); vIter++ )
          cout << *vIter << " ";
       cout << ")." << endl;
    
    	vector<int>::iterator result = find( vec.begin( ), vec.end( ), 40 ); //查找
        if ( result == vec.end( ) ) //没找到
            cout << "No" << endl;
        else //找到
            cout << "Yes" << endl;
    
    	vec.clear();
    
    	system("pause");
    }

    其中比较也可以用运算符重载来实现,参见博客

    摘自别人博客,对 vector 使用有如下建议,认为很有道理:

    需要说明的是,虽然这个通用的find方法也是可以用在map,set等上面的,但是效率会比容器内部的find方法慢很多,所以,除非容器实在是没有提供find方法,否则还是建议不要用公共的这一种。

    另外,作为题外话,我们需要注意一下vector的删除(erase)操作。由于vector需要能以下标方式取数据,所以必须时刻保证连续的存储空间,对应于实现上,即,当删除vector中间的一个成员时,这个成员后面的所有成员,会以原顺序向前全部拷贝过来。有兴趣的朋友,可以用这个例子测试一下。
    这里起码告诉了我们两件事:

    1.vector中一个成员被删除,会导致后面的成员进行copy和析构操作。
    2.vector不适合做有大量插入删除操作的容器,因为拷贝内存本身浪费很大

    展开全文
  • STL——vector find使用

    2019-08-17 10:21:41
    不同于map(map有find方法),vector本身是没有find这一方法,其find是依靠algorithm来实现的。 #include <iostream> #include <algorithm> #include <vector> int main() { using namespace ...

    不同于map(map有find方法),vector本身是没有find这一方法,其find是依靠algorithm来实现的。

    #include <iostream>
    #include <algorithm>
    #include <vector>
     
    int main()
    {
        using namespace std;
     
        vector<int> vec;
     
        vec.push_back(1);
        vec.push_back(2);
        vec.push_back(3);
        vec.push_back(4);
        vec.push_back(5);
        vec.push_back(6);
     
        vector<int>::iterator it = find(vec.begin(), vec.end(), 6);
     
        if (it != vec.end())
            cout<<*it<<endl;
        else
            cout<<"can not find"<<endl;
     
        return 0;

     

    展开全文
  • vectorfind用法

    千次阅读 2019-03-13 23:14:13
    find函数存在于算法中 其头文件为#include&lt;algorithm&gt; 二. 代码示例: #include&lt;vector&gt; #include&lt;algorithm&gt; #include&lt;iostream&gt; using namespace std; ...
  • vector find sort memset

    2017-11-15 18:35:45
    vector <&&&&> s;//这里面的&&&&可以是任何类型,这是vector比较好用的原因之一。好吧,我还是说下,以下写的都是我经常不是太懂的地方,只写怎么用,不解为什么。么么 vector赋值:这个有好几种,平时我也就熟练...
  • vectorfind 重载

    2014-02-24 19:29:00
    众所周知,map有find,但vectorfind只能调用algorithm中的find通用方法。 参考《How to find an item in a std::vector?》 对于结构体来说,如何定义==呢? 想到了重载==操作符,通常的情形是重载相同类型,在...
  • vector algorithm find

    2013-09-05 02:43:00
    本来想着申请了博客园以后 我要写的博客都必须是有深度有内涵的....这个任务很显然需要用到类的动态数组 本来想着自己写一个来着 结果发现C++库就有现成的被封装的动态数组 - vector 平常我们都忽视了它的存在 现在...
  • vector findfind_if用法

    2019-08-04 23:31:35
    #include <iostream>...vector> #include <algorithm> #include <functional> using namespace std; class Stock { public: Stock(long n, double a, double b); Stock() {}; ...
  • c++ 通过findvector中查找自定义类

    千次阅读 2020-03-02 17:48:32
    //by 鸟哥 通过findvector中查找自定义类 //有疑问请留言或加群 1032082534 #include<iostream> #include<algorithm> #include<vector> using namespace std; class Point3d{ double x,y,z; ...
  • vector中的find

    2013-10-29 20:07:00
    vector中的find - huangyimin的专栏 - 博客频道 - CSDN.NETvector中的find 2011-01-13 09:57 11334人阅读 评论(0) 收藏 举报vector算法iteratoralgorithm编程扩展今天又忘了怎么在vector中查找某一个值。。唉。。...
  • std::vector find

    2020-11-02 15:46:20
    //vector查找到指定元素删除 std::vector<int>... auto iter = std::find(std::begin(numbers), std::end(numbers), value); if (iter != std::end(numbers)) { numbers.erase(iter); ...
  • vector find() 用法

    2019-09-21 14:47:48
    int main() { vector<int> v; for(int i=0;i<10;i++) v.push_back(i); vector<int>::iterator it = find(v.begin(),v.end(),9); if(it != v.end()) cout<...
  • vector中的find用法

    千次阅读 2018-08-04 00:09:35
    注意find不属于vector的成员,而存在于算法中,应加上头文件#include &lt;algorithm&gt;: #include &lt;vector&gt; #include &lt;algorithm&gt; #include &lt;iostream&gt; int ...
  • vectorfind的用法

    千次阅读 2017-12-31 21:49:40
    3.vector::iterator find1=find(a.begin(),a.end(),3);//参数分别是容器的起始地址,结束地址,要查找的值 4.代码实例 #include #include #include using namespace std; int main() { vector a;
  • C++ vector findfind_if

    2019-07-28 22:42:53
    https://blog.csdn.net/MASILEJFOAISEGJIAE/article/details/82668549 https://blog.csdn.net/shs1992shs/article/details/83113087 https://bbs.csdn.net/topics/320090130 ...
  • vector 自定义find函数

    千次阅读 2009-03-07 15:12:00
    今天找了半天使用find函数的方法,发现都不怎么使用,于是自己定义了一个函数 vector::const_iterator find_val(vector::const_iterator beg,//vector首地址 vector::const_iterat
  • I am not sure to use the right term though ) to find out which shape have been hit. <p>here the code in the example: if(e.a->GetType() == b2Shape::e_circle && e.b->GetType() &#...
  • STL中vector find使用方法

    千次阅读 2018-12-06 16:54:29
    vector本身是没有find这一方法,其find是依靠algorithm来实现的。 #include &lt;iostream&gt; #include &lt;algorithm&gt; #include &lt;vector&gt; int main() { using namespace std;...
  • <div><p>Fixes failures like <a href="http://rostam.cct.lsu.edu/builders/hpx_clang_3_9_boost_1_62_centos_x86_64_release/builds/10/steps/run_unit_tests/logs/tests.unit.parallel.segmented_algorithms.distributed.tcp.partitioned_vector...STEllAR-GROUP/hpx</p></div>
  • 使用vector容器,即避免不了进行查找,所以今天就罗列一些stl的find算法应用于vector中。find() Returns an iterator to the first element in the range [first,last) that compares equal to val. If no such ...
  • 需要在架构体 定义时 添加operator ...vector> #include <fstream> #include <assert.h> #include <algorithm> using namespace std; struct g { int a; string b; bool operator == (..
  • vectorfind 的用法

    千次阅读 2013-09-05 09:10:18
    vector没有自带的find函数,需要用普通的find函数,使用如下:   vector nameList1; //给nameList1赋值 string name; if(find(nameList1.begin(),nameList1.end(),name) == nameList1.end()){ //没有找到 } else{ /...
  • find if查找vector内对象的成员

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,243
精华内容 2,897
关键字:

findvector