1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| class Solution { public: string reverseVowels(string s) { bool m[256] = {false}; for (char v : "aeiouAEIOU") { m[v] = true; } int n = size(s), l = 0, r = n - 1; while (l < r) { while (l < r && !m[s[l]]) ++l; while (l < r && !m[s[r]]) --r; swap(s[l++], s[r--]); } return s; } };
|