vector怎么查找某个元素的下标

1692
2023/12/28 17:05:43
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在C++中,可以使用std::find()函数来查找某个元素的下标。

首先,需要包含头文件<vector>

然后,创建一个vector,并初始化。

#include <iostream>
#include <vector>
#include <algorithm>

int main() {
    std::vector<int> vec = {10, 20, 30, 40, 50};

    int element = 30;

    auto itr = std::find(vec.begin(), vec.end(), element);

    if (itr != vec.end()) {
        int index = std::distance(vec.begin(), itr);
        std::cout << "Element found at index: " << index << std::endl;
    } else {
        std::cout << "Element not found" << std::endl;
    }

    return 0;
}

在上述代码中,使用std::find()函数来查找元素30在vector中的位置。如果找到了该元素,返回一个指向该元素的迭代器,否则返回vector的末尾迭代器vec.end()

然后,通过std::distance()函数计算得到迭代器itr与vector起始位置之间的距离,即为元素的下标。

最后,根据下标输出结果。

输出结果为:

Element found at index: 2

如果要查找的元素不在vector中,输出结果为:

Element not found

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: vector的push_back函数怎么使用