The function std::shuffle has been introduced in C++11:
template< class RandomIt, class URNG > void shuffle( RandomIt first, RandomIt last, URNG&&