vector没有自带的find函数,需要用普通的find函数,使用如下:

vector<string> nameList1;
//给nameList1赋值
string name;
if(find(nameList1.begin(),nameList1.end(),name) == nameList1.end()){
//没有找到
}
else{
//找到了
}

如果找到一个vector中有、一个vector中没有的元素,如何会快速一点。下面找出nameList2中有的,nameList1中没有的元素。

 vector<string> nameList1;
vector<string> nameList2;
vector<string> nameList;
//给nameList1、2赋值 省略
vector<string>::iterator itit1;
vector<string>::iterator itit2;
//for(int i=0;i<nameList2.size();i++){
for(itit2 = nameList2.begin();itit2<nameList2.end();itit2++){
//string name = nameList2.at(i);
string name = *itit2;
itit1 = find(nameList1.begin(),nameList1.end(),name);
if( !(itit1 == nameList1.end())){
//找到了
//nameList2.erase(itit2);注意此处不能erase,不然会导致itit2失效,itit2++时会出错
nameList1.erase(itit1);
}else{
//没有找到
nameList.push_back(name);
}
}

最后nameList中的即为所求得的结果。

这样将在nameList1和nameList2中共同出现的元素每次找出时将nameList1中的去掉,这样可以缩小搜索的范围,提高检索速度,尤其是当数据量很大的情况下。

vector中find 的用法相关推荐

  1. vector中的find用法

    注意find不属于vector的成员,而存在于算法中,应加上头文件#include <algorithm>: #include <vector> #include <al ...

  2. java vector pair_C++ vector中使用pair 及 pair的基本用法总结(转)

    pair的基本用法总结 1.pair的应用 pair是将2个数据组合成一组数据,当需要这样的需求时就可以使用pair,如stl中的map就是将key和value放在一起来保存.另一个应用是,当一个函数 ...

  3. C++ vector 中sort的一些用法

    C++ vector 中sort的一些用法 文章目录 C++ vector 中sort的一些用法 1.默认排序 2.怎么降序呢 3.vector 怎么打印里面的元素呢 4. 实例 参考 1.默认排序 ...

  4. vector中find和find_if的用法

    今天郁闷写大作业中.唉..每次写都tm暴力遍历.有stl你用毛遍历啊.现在记下来.再遍历就剁手吧.(- -!) stl包括容器.迭代器和算法: 容器 用于管理一些相关的数据类型.每种容器都有它的优缺点 ...

  5. java.util.vector中的vector的详细用法

    ArrayList会比Vector快,他是非同步的,如果设计涉及到多线程,还是用Vector比较好一些  import java.util.*; /**  * 演示Vector的使用.包括Vector ...

  6. vector用法 java_java.util.vector中的vector的详细用法

    /** *演示Vector的使用.包括Vector的创建.向Vector中添加元素.从Vector中删除元素.*统计Vector中元素的个数和遍历Vector中的元素.*/ public class ...

  7. C++/C++11中std::string用法汇总

    C++/C++11中std::string是个模板类,它是一个标准库.使用string类型必须首先包含<string>头文件.作为标准库的一部分,string定义在命名空间std中. st ...

  8. 关于java的集合类,以及HashMap中Set的用法!

    來源:http://hi.baidu.com/fyears/blog/item/52329711622e007ccb80c465.html 关于java的集合类,以及HashMap中Set的用法! 2 ...

  9. 【转】ArrayList Vector LinkedList 区别与用法

    ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢 ...

最新文章

  1. 安全性神话已不再,首个MacOS勒索病毒现身
  2. MATLAB常用命令、函数与运算
  3. 【第一季】CH07_FPGA_RunLED创建VIVADO工程实验
  4. 32位linux 内存占用,LINUX内存高,触发OOM-KILLER问题解决
  5. ansys 内聚力_内聚力 软件工程
  6. 给大家推荐9个专业分享生信技术的公众号
  7. web前后台数据交互的四种方式
  8. Oracle 11g 的官方支持周期和时限
  9. 田逸:坎坷IT路 从机修工到系统管理高手『英雄故事』
  10. MySQL忘记密码应当如何重置
  11. 世界上主要BIOS厂家介绍(Phoenix,AMI,Insyde,Byosoft)
  12. scrapy爬虫-拉勾网(学习交流)
  13. android 自定义view画虚线长方形
  14. QQ语音麦克风没声音,但其他地方能用麦克风(USB耳机麦克风)
  15. export default function和export function的区别
  16. 基于低代码为企事业单位打造督办事务管理一体化协同管控平台
  17. linux目录复制 cp: omitting directory
  18. 二维码技术在证卡上的应用
  19. 74hc165C语言程序,74hc165使用方法(74hc165功能_内部结构图_时序图)
  20. VBA给Office添加任务窗格

热门文章

  1. Python编程基础:第一节 变量Variables
  2. 【转知乎】人工智能会是泡沫吗?
  3. 【git学习四】git基础之git为项目打标签
  4. android告别篇-对于源码我的一些看法
  5. c#读取xml中特定节点的值(实例)
  6. 高并发高流量网站架构详解--转载
  7. Jenkins配置基于角色的项目权限管理--转
  8. 开发团队如何完成一个项目?
  9. 老信贷总结:贷款催收技巧和注意事项
  10. 【数据库】SQL极速入门(多种方式查询用户复借次数)