#include <stl.h> #include <iostream.h> int main () { typedef vector <int> IntVec; IntVec v1 (10); iota (v1.begin (), v1.end (), 0); IntVec v2 (3); iota (v2.begin (), v2.end (), 50); ostream_iterator <int> iter (cout, " "); cout << "v1: "; copy (v1.begin (), v1.end (), iter); cout << endl; cout << "v2: "; copy (v2.begin (), v2.end (), iter); cout << endl; IntVec::iterator location; location = search (v1.begin (), v1.end (), v2.begin (), v2.end ()); if (location == v1.end ()) cout << "v2 not contained in v1" << endl; else cout << "Found v2 in v1 at offset: " << location - v1.begin () << endl; iota (v2.begin (), v2.end (), 4); cout << "v1: "; copy (v1.begin (), v1.end (), iter); cout << endl; cout << "v2: "; copy (v2.begin (), v2.end (), iter); cout << endl; location = search (v1.begin (), v1.end (), v2.begin (), v2.end ()); if (location == v1.end ()) cout << "v2 not contained in v1" << endl; else cout << "Found v2 in v1 at offset: " << location - v1.begin () << endl; return 0; }