Given a string S, print those permutations of string S which are lexicographically greater than S. If there is no such permutation of string, print -1.
Input : BCA
Output : CAB, CBA
Here, S = “BCA”, and there are 2 strings “CAB, CBA” which are lexicographically greater than S.
Input : CBA
Output : -1
There is no string which is lexicographically greater than S, so the output is -1.
Approach: To solve the problem mentioned above we will use STL. Use next_permuation() and prev_permutation() functions to check and the lexicographically greater strings. If the string is greater then print it otherwise print -1.
Below is the implementation of above approach:
ACB BAC BCA CAB CBA
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Print all the combinations of a string in lexicographical order
- Print all permutations of a number N greater than itself
- Print all longest common sub-sequences in lexicographical order
- Print all distinct circular strings of length M in lexicographical order
- Write a program to print all permutations of a given string
- Print all distinct permutations of a given string with duplicates
- Print all the palindromic permutations of given string in alphabetic order
- Lexicographical concatenation of all substrings of a string
- Print all palindrome permutations of a string
- Print all permutations of a string in Java
- K-th lexicographical string of given length
- Generate all numbers up to N in Lexicographical Order
- Number of permutations of a string in which all the occurrences of a given character occurs together
- Generate all permutations of a string that follow given constraints
- Lexicographical Maximum substring of string
- Find the k-th string in lexicographical order consisting of n-2 X's and 2 Y's
- Largest lexicographical string with at most K consecutive elements
- Print all permutations with repetition of characters
- Print all permutations in sorted (lexicographic) order
- Iterative approach to print all permutations of an Array
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.