题目描述:
编写一个函数,以字符串作为输入,反转该字符串中的元音字母。
示例 1:
输入:“hello”
输出:“holle”
示例 2:
输入:“leetcode”
输出:“leotcede”
代码如下:
class Solution {
public String reverseVowels(String s) {
int n = s.length();
char[] ch = s.toCharArray();
LinkedList<Character> list = new LinkedList<>();
for (int i = 0; i < n; i++) {
if (ch[i] == 'a' || ch[i] == 'e' || ch[i] == 'i' || ch[i] == 'o' || ch[i] == 'u' || ch[i] == 'A' || ch[i] == 'E' || ch[i] == 'I' || ch[i] == 'O' || ch[i] == 'U') {
list.add(s.charAt(i));
}
}
for (int j = 0; j < n; j++) {
if (ch[j] == 'a' || ch[j] == 'e' || ch[j] == 'i' || ch[j] == 'o' || ch[j] == 'u' || ch[j] == 'A' || ch[j] == 'E' || ch[j] == 'I' || ch[j] == 'O' || ch[j] == 'U') {
ch[j] = list.removeLast();
}
}
return new String(ch);
}
}
执行结果: