vector使用find()
时间: 2024-06-13 16:04:19 浏览: 77
vector使用的一个简单例子
vector是一种STL容器,它可以存储任意类型的元素,并且支持动态扩容。不同于map,vector本身是没有find()这一方法的,但是可以通过algorithm库中的find()函数来实现查找。使用find()函数需要包含algorithm头文件。例如,可以使用以下代码在vector中查找元素1的位置:
vector<int> vec = {1, 2, 3, 4, 5};
vector<int>::iterator it = find(vec.begin(), vec.end(), 1);
if (it != vec.end()) {
cout << "found" << endl;
} else {
cout << "not found" << endl;
}
如果find()函数找到了元素,则返回该元素的迭代器,否则返回容器的end()迭代器。需要注意的是,end()并不是最后一个元素,最后一个元素在end()-1里。如果找到的话,那么这个迭代器的位置表示第一次出现该元素的位置。
如果要在两个vector中查找不同的元素,可以使用类似于引用中的方法,遍历其中一个vector,然后在另一个vector中查找是否存在该元素。如果存在,则从第一个vector中删除该元素,否则将该元素添加到结果vector中。
阅读全文