编写一个函数,以字符串作为输入,反转该字符串中的元音字母。(包括大写)
class Solution {
public String reverseVowels(String s) {
//双指针
char[] ch = s.toCharArray();
int left = 0, right = ch.length - 1;
while (left < right) {
//调整位置
while (left < right && !isVowel(ch[left])) left++;
while (left < right && !isVowel(ch[right])) right--;
//交换
if (left < right) {
char temp = ch[left];
ch[left++] = ch[right];
ch[right--] = temp;
}
}
return new String(ch);
}
//判断字符是否是元音
private boolean isVowel(char c) {
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' ||
c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U')
return true;
else
return false;
}
}