Illustrating the generic next_permutation algorithms : next_permutation « STL Algorithms Helper « C++






Illustrating the generic next_permutation algorithms

 
 

#include <iostream>
#include <cassert>
#include <algorithm>
#include <vector>
using namespace std;

int main()
{
  vector<int> vector1(3);
  for (int i = 0; i < 3; ++i) 
     vector1[i] = i;

  // In lexicographical order the permutations of 0 1 2 are
  // 0 1 2, 0 2 1, 1 0 2, 1 2 0, 2 0 1, 2 1 0. 
  // Show that from 0 1 2 next_permutation produces 0 2 1:
  next_permutation(vector1.begin(), vector1.end());
  cout << vector1[0] << " ";
  cout << vector1[1] << " ";
  cout << vector1[2] << " ";

  return 0;
}

 /* 
0 2 1 
 */       
  








Related examples in the same category

1.Use next_permutation to permute elements until they are sorted