# [345. Reverse Vowels of a String](https://leetcode.com/problems/reverse-vowels-of-a-string/description/) # 思路 翻转字符串中的元音字母,即A、E、I、O、U、a、e、i、o、u。常规题 # C++ ```C++ class Solution { private: bool isVowel(char c){ if('A' <= c && c <= 'Z') c = c - 'A' + 'a'; if(c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') return true; return false; } public: string reverseVowels(string s) { int low = 0, high = s.size() - 1; while(low < high){ while(low < high && !isVowel(s[low])) low++; while(low < high && !isVowel(s[high])) high--; if(low < high) swap(s[low++], s[high--]); } return s; } }; ```