find()---string、vector、map/set

  • string find()

    (详细见上面string)

    string开始谈find()  查找是在处理数据中最重要的一种操作方式之一。

    stringfind()的应用( rfind()  类似,只是从反向查找,就是从string.length()-1的下标开始反向查找)

    原型如下:

asize_t findconst stringstrsize_t pos = 0const; //查找对象 - string类对象

bsize_t findconst char * ssize_t pos = 0const; //查找对象- 字符串

csize_t findconst char * ssize_t possize_t nconst; //查找对象- 字符串的前ñ个字符

dsize_t findchar csize_t pos = 0const; //查找对象- 字符

   

例子1

string: string a="ojbk";

int t=a.find('o'); //t=0

int t=a.find('o',0); //t=0 *注:返回坐标; 第二个是从下标0开始查找

   

int t=a.find("oj") //t=0

int t=a.find("oj",0) //t=0 *注:返回坐标,查找字符串的第一个字符的坐标.第二个是从下标0开始查找

  

   string在c++其实可以算是数据结构的一种 在c++的数据结构中string都会单独拿出一章来说 它具有自己单独的库,还是很强的。

   

   

   

   

   

   

  • vector find()

    (详细见上面vector

    vector_find方法的使用

    不同于map/set(map/setfind方法),vector本身是没有

       

    find这一方法的,其find函数是依靠algorithm来实现的

    所以要使用#include<algorithm>

       

template<class InputIterator, class T>InputIterator find (InputIterator first, InputIterator last, const T& val)

例如:

include<algorithm>

include<vector>

   

vector<int>::iterator it = find(vec.begin(),vec.end(),1);

        if(it != vec.end())

                cout<<"found"<<endl;

        else

                cout<<"not found"<<endl;

   

   

   

   

   

  • set/map find()

    他们底层是由红黑树实现的,自带find()函数

       

posted @   atomxing  阅读(103)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示