The following code example is taken from the book
The C++ Standard Library - A Tutorial and Reference, 2nd Edition
by Nicolai M. Josuttis, Addison Wesley Longman, 2012
Copyright © 2012 by Pearson Education, Inc. and Nicolai M. Josuttis
#include <iostream>
#include <algorithm>
#include <functional>
#include <iterator>
using namespace std;
int main()
{
int coll[] = { 5, 6, 2, 4, 1, 3 };
// square all elements
transform (coll, coll+6, // first source
coll, // second source
coll, // destination
multiplies<int>()); // operation
// sort beginning with the second element
sort (coll+1, coll+6);
// print all elements
copy (coll, coll+6,
ostream_iterator<int>(cout," "));
cout << endl;
}