从c++中的特定索引中搜索Vector的元素
Search an element of Vector from specific index in c++
vector<int>v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.push_back(4);
v.push_back(5);
int pos = find(v.begin(),v.end(),4)-v.begin();
Answer : pos = 3
find((将从头至尾进行搜索并返回索引
有没有任何方法可以从特定的索引中搜索,就像我想从向量中的索引2到4中搜索一样。
是的,您可以使用加法运算。
vector<int>v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.push_back(4);
v.push_back(5);
int pos = find(v.begin()+2,v.begin()+4, 4)-(v.begin()+2);
Answer : pos = 3
使用std::find
和std::distance
可以得到索引:
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;
int main()
{
vector<int>v = {1, 2, 3, 4, 5};
auto pos = distance(v.begin(), find(v.begin() + 2, v.end() + 4, 4));
cout << pos;
}
Output:
3
相关文章:
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- 在c++中用vector填充一个简单的动态数组
- vector.resize()中的分配错误
- 使用std::vector的OpenCL矩阵乘法
- 有根的二进制搜索树.保留与其父级的链接
- POCO::PostgreSQL:如何将std::vector支持添加到`Binder::bind`
- 在某些循环内使用vector.push_back时出现分段错误
- 当vector是tje全局变量时,c++中vector的内存管理
- 如何从 std::vector 搜索和返回项目
- 对的排序向量 (std::vector<pair<int, int>>) 按对的第一个元素搜索并更新第二个元素值
- c 在std :: vector中搜索
- 使用std::vector将数组的最佳匹配搜索到矩阵中
- 通过头文件函数将遍历的数据从二进制搜索树加载到Vector中
- 在搜索字符串时,Vector下标超出了范围
- 检查在vector的vector中搜索时std::find是否失败
- 可视化 如何在 c++ 中搜索 vector<Object*> 中的特定变量?
- 在vector<std::p air<int, vector > >中搜索<int>
- 在Vector中搜索字符串
- 在std::vector中搜索和计数特定元素的最快方法是什么?
- 从c++中的特定索引中搜索Vector的元素