How to Remove Vowels from a String in C++?
- 时间:2020-09-23 15:50:46
- 分类:网络文摘
- 阅读:79 次
Given a string S, remove the vowels ‘a’, ‘e’, ‘i’, ‘o’, and ‘u’ from it, and return the new string.
Example 1:
Input: “leetcodeisacommunityforcoders”
Output: “ltcdscmmntyfrcdrs”Example 2:
Input: “aeiou”
Output: “”S consists of lowercase English letters only.
1 <= S.length <= 1000
Loop and Remove
The usual approach will be looping the string and check each character. Ignore the vowels or otherwise push it to the result string.
1 2 3 4 5 6 7 8 9 10 11 12 | class Solution { public: string removeVowels(string S) { string s = ""; for (const auto &n: S) { if (string("aeiou").find(n) == string::npos) { s.push_back(n); // s += n; } } return s; } }; |
class Solution { public: string removeVowels(string S) { string s = ""; for (const auto &n: S) { if (string("aeiou").find(n) == string::npos) { s.push_back(n); // s += n; } } return s; } };
Using Modern C++ std::accumulate()
With the std::accumulate() in Modern C++ e.g. C++14, we need to pass the begin and end iterators, the initial value which is set to a mutable string/vector, and a accmulator function.
1 2 3 4 5 6 7 8 9 10 11 | class Solution { public: string removeVowels(string S) { return std::accumulate(begin(S), end(S), std::string{}, [](auto &a, auto &b) { if (string("aeiou").find(b) == string::npos) { return a + b; } return a; // b is vowel, ignore }); } }; |
class Solution { public: string removeVowels(string S) { return std::accumulate(begin(S), end(S), std::string{}, [](auto &a, auto &b) { if (string("aeiou").find(b) == string::npos) { return a + b; } return a; // b is vowel, ignore }); } };
It is worth pointing out that the “” in C++ is interpreted to char* by default, that is why we need to explicitly cast it to string type before using the find() method.
–EOF (The Ultimate Computing & Technology Blog) —
推荐阅读:正方体铁块熔铸成圆锥形问题 甲乙应合作几天 圆锥形木块沿着它的高切开 通过修改版本号屏蔽WordPress主程序及插件更新提示的方法 WordPress定时发布功能 网站SEO优化的好帮手 robots.txt的格式、写法及其对于WordPress的seo作用 无需修改代码 轻松隐藏WordPress管理工具栏 修改WordPress标签云字体大小及标签显示数量的方法 巧用wordpress更新服务 提升搜索引擎收录文章的速度 无需登陆FTP 新建一个wordpress主题文件
- 评论列表
-
- 添加评论