vector中find 的用法
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 的用法相关推荐
- vector中的find用法
注意find不属于vector的成员,而存在于算法中,应加上头文件#include <algorithm>: #include <vector> #include <al ...
- java vector pair_C++ vector中使用pair 及 pair的基本用法总结(转)
pair的基本用法总结 1.pair的应用 pair是将2个数据组合成一组数据,当需要这样的需求时就可以使用pair,如stl中的map就是将key和value放在一起来保存.另一个应用是,当一个函数 ...
- C++ vector 中sort的一些用法
C++ vector 中sort的一些用法 文章目录 C++ vector 中sort的一些用法 1.默认排序 2.怎么降序呢 3.vector 怎么打印里面的元素呢 4. 实例 参考 1.默认排序 ...
- vector中find和find_if的用法
今天郁闷写大作业中.唉..每次写都tm暴力遍历.有stl你用毛遍历啊.现在记下来.再遍历就剁手吧.(- -!) stl包括容器.迭代器和算法: 容器 用于管理一些相关的数据类型.每种容器都有它的优缺点 ...
- java.util.vector中的vector的详细用法
ArrayList会比Vector快,他是非同步的,如果设计涉及到多线程,还是用Vector比较好一些 import java.util.*; /** * 演示Vector的使用.包括Vector ...
- vector用法 java_java.util.vector中的vector的详细用法
/** *演示Vector的使用.包括Vector的创建.向Vector中添加元素.从Vector中删除元素.*统计Vector中元素的个数和遍历Vector中的元素.*/ public class ...
- C++/C++11中std::string用法汇总
C++/C++11中std::string是个模板类,它是一个标准库.使用string类型必须首先包含<string>头文件.作为标准库的一部分,string定义在命名空间std中. st ...
- 关于java的集合类,以及HashMap中Set的用法!
來源:http://hi.baidu.com/fyears/blog/item/52329711622e007ccb80c465.html 关于java的集合类,以及HashMap中Set的用法! 2 ...
- 【转】ArrayList Vector LinkedList 区别与用法
ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢 ...
最新文章
- 安全性神话已不再,首个MacOS勒索病毒现身
- MATLAB常用命令、函数与运算
- 【第一季】CH07_FPGA_RunLED创建VIVADO工程实验
- 32位linux 内存占用,LINUX内存高,触发OOM-KILLER问题解决
- ansys 内聚力_内聚力 软件工程
- 给大家推荐9个专业分享生信技术的公众号
- web前后台数据交互的四种方式
- Oracle 11g 的官方支持周期和时限
- 田逸:坎坷IT路 从机修工到系统管理高手『英雄故事』
- MySQL忘记密码应当如何重置
- 世界上主要BIOS厂家介绍(Phoenix,AMI,Insyde,Byosoft)
- scrapy爬虫-拉勾网(学习交流)
- android 自定义view画虚线长方形
- QQ语音麦克风没声音,但其他地方能用麦克风(USB耳机麦克风)
- export default function和export function的区别
- 基于低代码为企事业单位打造督办事务管理一体化协同管控平台
- linux目录复制 cp: omitting directory
- 二维码技术在证卡上的应用
- 74hc165C语言程序,74hc165使用方法(74hc165功能_内部结构图_时序图)
- VBA给Office添加任务窗格