1: //inplace_merge1a.cpp 3: #include <iostream> 4: #include <vector> 5: #include <algorithm> 6: using namespace std; 8: int main() 9: { 10: cout << "\nThis program illustrates the use of the STL " 11: "inplace_merge() algorithm\n(default version) to merge two " 12: "sorted ranges of integer values in the\nsame vector into a " 13: "single sorted range of values within that same vector."; 14: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 16: int a[] = {1, 3 , 5, 7, 9, 11, 13, 2, 4, 6, 8, 10}; 17: vector<int> v(a, a+12); 19: cout << "\nHere are the contents of v:\n"; 20: for (vector<int>::size_type i=0; i<v.size(); i++) 21: cout << v.at(i) << " "; 22: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 24: inplace_merge(v.begin(), v.begin()+7, v.end()); 26: cout << "\nNow we perform the \"in place merge\"."; 27: cout << "\nHere are the revised contents of v:\n"; 28: for (vector<int>::size_type i=0; i<v.size(); i++) 29: cout << v.at(i) << " "; 30: cout << "\nPress Enter to continue ... "; cin.ignore(80, '\n'); 31: }