最基本的线性搜索函数是find。它在读迭代器的区间内搜索一个值,返回指向该区间内的首次匹配到目标元素的迭代器,如果没有找到,则返回末端迭代器的副本。
运用find可以快速到一个数据序列中查找一个数据。
EXAMPLE
#include <algorithm>
#include <iostream>
#include <istream>
#include <ostream>
#include <vector>
//C++实现的快速排序,运用C++标准库中的快速排序函数,find算法使用
int main()
{
std::vector<int> data;
int x(0);
while(std::cin >> x)
data.push_back(x);
std::sort(data.begin(),data.end());
for(std::vector<int>::iterator i(data.begin());i != data.end(); i++)
std::cout<< *i << "\n";
std::cout<<"请输入要查找的数:";
std::cin.clear();
std::cin>> x;
std::vector<int>::iterator iter(std::find(data.begin(),data.end(),x));
if(iter == data.end())
std::cout<<"value not found\n";
else
std::cout<<"found\n";
return 0;
}