Given a string s we have to find the lexicographical maximum substring of a string
Input : s = "ababaa" Output : babaa Explanation : "babaa" is the maximum lexicographic susbtring formed from this string Input : s = "asdfaa" Output : sdfaa
The idea is simple, we traverse through all substrings. For every substring, we compare it with current result and update result if needed.
Below is the implementation:
Time Complexity : O(n)
Space Complexity : O(n)
We find largest character and all its indexes. Now we simply traverse through all instances of the largest character to find lexicographically maximum substring.
- Maximum length substring with highest frequency in a string
- Find if a given string can be represented from a substring by iterating the substring “n” times
- Lexicographical concatenation of all substrings of a string
- Print all the combinations of a string in lexicographical order
- Partition given string in such manner that i'th substring is sum of (i-1)'th and (i-2)'th substring
- Find length of longest subsequence of one string which is substring of another string
- Minimum changes required to make first string substring of second string
- Queries to check if string B exists as substring in string A
- Maximum length substring having all same characters after k changes
- Lexicographically smallest substring with maximum occurrences containing a's and b's only
- Maximum length palindromic substring such that it starts and ends with given char
- Frequency of a substring in a string
- Check if a string is substring of another
- Maximum number of times str1 appears as a non-overlapping substring in str2
- Frequency of a substring in a string using pthread
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.