Sort Vowels in a String
You receive a 0-indexed string s, permute s to get a new string t such that:
-
All consonants remain in their original places. More formally, if there is an index
iwith0 <= i < s.lengthsuch thats[i]is a consonant, thent[i] = s[i]. -
The vowels must be sorted in the nondecreasing order of their ASCII values. More formally, for pairs of indices
i,jwith0 <= i < j < s.lengthsuch thats[i]ands[j]are vowels, thent[i]must not have a higher ASCII value thant[j].
Find and provide the resulting string.
The vowels are 'a', 'e', 'i', 'o', and 'u', and they can appear in lowercase or uppercase. Consonants comprise all letters that are not vowels.
Input: s = "impoldev"
Output: "empildov"
Explanation: 'i', 'o', and 'e' are the vowels in s; 'm', 'p', 'l', 'd', and 'v' are all consonants. The vowels are sorted according to their ASCII values, and the consonants remain in the same places.
Input: s = "lYmpH"
Output: "lYmpH"
Explanation: There are no vowels in s (all characters in s are consonants), so we provide "lYmpH".
Constraints
1 <= s.length <= 10^5sconsists only of letters of the English alphabet in uppercase and lowercase.
Did this problem appear in one of your interviews?
Responses stay private.
