查找算法——adjacent_find

查找算法——adjacent_find

功能描述:

  • 查找相邻重复元素

函数原型:

  • adjacent_find(iterator beg, iterator end);

    // 查找相邻重复元素,返回相邻元素的第一个位置的迭代器

    // beg 开始迭代器

    // end 结束迭代器

测试代码

#include <iostream>

using namespace std;

#include <algorithm>
#include <vector>

void test01()
{
	vector<int> v;
	v.push_back(1);
	v.push_back(2);
	v.push_back(5);
	v.push_back(2);
	v.push_back(4);
	v.push_back(4);
	v.push_back(3);

	//查找相邻重复元素
	vector<int>::iterator it = adjacent_find(v.begin(), v.end());
	if (it == v.end()) {
		cout << "找不到!" << endl;
	}
	else {
		cout << "找到相邻重复元素为:" << *it << endl;
	}
}

int main()
{
	test01();
	system("pause");
	return 0;
}

测试结果

查找算法——adjacent_find

总结

  • 面试题中如果出现查找相邻重复元素,可以用STL中的adjacent_find算法。
上一篇:算法 - 冒泡排序(Java)


下一篇:POJ2689 ZOJ1842 UVA10140 Prime Distance【筛选法】