算法之旅,直奔<algorithm>之十五 find

find(vs2010)

  • 引言
这是我学习总结 <algorithm>的第十五篇。关于<algorithm>,每篇都很小,但是都很好用,可以秀出你的个性。
  • 作用
find的作用是在数据集合里去找指定元素的位置,并返回元素的指针。
  • 原理
template<class InputIterator, class T>
  InputIterator find (InputIterator first, InputIterator last, const T& val)
{
  while (first!=last) {
    if (*first==val) return first;
    ++first;
  }
  return last;
}
  • 实验
数据集合

找30,并返回它的指针.我们利用返回的指针去查看它的下一个元素。如下
          
  • 代码
test.cpp
#include <iostream>     // std::cout
#include <algorithm>    // std::find
#include <vector>       // std::vector

int main () {
	int myints[] = { 10, 20, 30 ,40 };
	int * p;

	// pointer to array element:
	p = std::find (myints,myints+4,30);
	++p;
	std::cout << "The element following 30 is " << *p << '
';

	std::vector<int> myvector (myints,myints+4);
	std::vector<int>::iterator it;

	// iterator to vector element:
	it = find (myvector.begin(), myvector.end(), 30);
	++it;
	std::cout << "The element following 30 is " << *it << '
';
	system("pause");
	return 0;
}


原文地址:https://www.cnblogs.com/riasky/p/3481648.html