Question: In c++ ALGORITHM Johnson-Trotter(n) // Input: a positive integer n // Output: A list of all permutations of {1, 2, ..., n} initialize the first
In c++
ALGORITHM Johnson-Trotter(n) // Input: a positive integer n // Output: A list of all permutations of {1, 2, ..., n} initialize the first permutation as 1 2 ... n with directions pointing left while the last permutation has a mobile element find its largest mobile element k swap k and the element to which k is directed reverse the direction of all elements that are larger than k add the new permutation to the list Note: an element is mobile if its direction points to a smaller adjacent element. Example: 1 2 3 1 3 2 3 1 2 3 2 1 2 3 1 2 1 3 REQUIREMENTS: Design and implement a program to generate all permutations of the set of least n positive integers. INPUT: an integer n with 1 n 25. OUTPUT: The tag There are x permutations of the set {1, 2, ..., n}:, where x = n! a list of all permutations of the set {1, 2, ..., n}, one per line. EXAMPLE OUTPUT: There are 6 permutations of the set {1, 2, 3}:
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
