Skip to content

1119. Remove Vowels from a String πŸ”’

Description

Given a string s, remove the vowels 'a', 'e', 'i', 'o', and 'u' from it, and return the new string.

 

Example 1:

Input: s = "leetcodeisacommunityforcoders"
Output: "ltcdscmmntyfrcdrs"

Example 2:

Input: s = "aeiou"
Output: ""

 

Constraints:

  • 1 <= s.length <= 1000
  • s consists of only lowercase English letters.

Solutions

Solution 1: Simulation

We can directly traverse the string according to the requirements of the problem, and append characters that are not vowels to the result string.

The time complexity is \(O(n)\), where \(n\) is the length of the string. Ignoring the space consumption of the answer, the space complexity is \(O(1)\).

1
2
3
class Solution:
    def removeVowels(self, s: str) -> str:
        return "".join(c for c in s if c not in "aeiou")
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
class Solution {
    public String removeVowels(String s) {
        StringBuilder ans = new StringBuilder();
        for (int i = 0; i < s.length(); ++i) {
            char c = s.charAt(i);
            if (!(c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')) {
                ans.append(c);
            }
        }
        return ans.toString();
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
class Solution {
public:
    string removeVowels(string s) {
        string ans;
        for (char& c : s) {
            if (!(c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')) {
                ans += c;
            }
        }
        return ans;
    }
};
1
2
3
4
5
6
7
8
9
func removeVowels(s string) string {
    ans := []rune{}
    for _, c := range s {
        if !(c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') {
            ans = append(ans, c)
        }
    }
    return string(ans)
}
1
2
3
function removeVowels(s: string): string {
    return s.replace(/[aeiou]/g, '');
}

Comments