21xrx.com
2024-11-05 18:37:39 Tuesday
登录
文章检索 我的文章 写文章
C++查找函数find的使用方法
2023-07-09 01:57:21 深夜i     --     --
C++ 查找函数 find 使用方法

C++是一种流行的编程语言,它拥有许多灵活且有效的函数,可以帮助程序员实现各种功能。其中一个非常有用的函数是“find”,它可以在容器中查找特定的值或元素并返回位置或迭代器。

在C++中,“find”函数是一个包含在标准库中的通用算法,它可以按照不同类型的容器进行查找操作,包括数组、向量、列表和集合等。在使用“find”函数时,需要指定容器的起始和结束位置,以及要查找的元素或值。

下面是使用“find”函数的一些示例:

1. 在向量中查找特定值并返回位置


#include <iostream>

#include <vector>

#include <algorithm>

using namespace std;

int main()

{

  vector<int> vec 20;

  auto it = find(vec.begin(), vec.end(), 30);

  

  if (it != vec.end())

    cout << "元素 " << *it << " 的位置为:" << (it - vec.begin()) << endl;

  else

    cout << "未找到该元素!" << endl;

    

  return 0;

}

在上面的代码中,我们首先声明了一个整型向量,并在其中添加了一些值。然后,我们使用“find”函数在向量中查找值为30的元素,并将其存储在变量“it”中。最后,我们判断找到的元素是否存在,如果存在,则输出该元素的位置,否则输出“未找到该元素”。

2. 在列表中查找特定字符串并返回迭代器


#include <iostream>

#include <list>

#include <algorithm>

using namespace std;

int main()

{

  list<string> lst {"hello", "world", "C++", "programming", "language"};

  auto it = find(lst.begin(), lst.end(), "programming");

  

  if (it != lst.end())

    cout << "字符串 " << *it << " 的位置为:" << distance(lst.begin(), it) << endl;

  else

    cout << "未找到该字符串!" << endl;

    

  return 0;

}

在上面的代码中,我们声明了一个字符串列表,并使用“find”函数在列表中查找字符串“programming”。如果找到该字符串,则输出其位置(通过distance函数计算得出),否则输出“未找到该字符串”。

3. 在数组中查找特定元素并返回指针


#include <iostream>

#include <algorithm>

using namespace std;

int main()

{

  int arr[] = 4;

  int* ptr = find(arr, arr+5, 3);

  

  if (ptr != arr+5)

    cout << "元素 " << *ptr << " 的位置为:" << (ptr - arr) << endl;

  else

    cout << "未找到该元素!" << endl;

    

  return 0;

}

在上面的代码中,我们定义了一个包含5个整型值的数组,并使用“find”函数在数组中查找值为3的元素。此时,指针“ptr”将指向该元素的地址,并输出其位置,否则输出“未找到该元素”。

除了上述示例,C++中的“find”函数还可以进行更多类型和容器的查找操作。在使用“find”函数时,需要留意变量类型和容器类型,以便正确地使用其参数和返回值。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复