#include "algostuff.hpp"
using namespace std;
int main()
{
vector<int> coll;
list<int>searchcoll;
INSERT_ELEMENTS(coll,1,11);
INSERT_ELEMENTS(searchcoll,3,5);
PRINT_ELEMENTS(coll,"coll: ");
PRINT_ELEMENTS(searchcoll,"searchcoll: ");
vector<int>::iterator pos;
pos=find_first_of(coll.begin(),coll.end(),searchcoll.begin(),searchcoll.end());
//搜索既在coll的[begin,end)中出现,又在searchcoll的[begin,end)出现的第一个元素的位置
cout<<"first element of searchcoll in coll is element "
<<distance(coll.begin(),pos)+1
<<endl;
vector<int>::reverse_iterator rpos;
rpos=find_first_of(coll.rbegin(),coll.rend(),searchcoll.begin(),searchcoll.end());//反向迭代器
cout<<"last element of seeachcoll in coll is element "
<<distance(coll.begin(),rpos.base())//调整为正向迭代器,计算最后一个相同元素与开头的距离
<<endl;
}