題目:反轉字串中的母音字母
編寫一個函式,以字串作為輸入,反轉該字串中的母音字母。
複製程式碼
示例:
輸入: "hello"
輸出: "holle"
輸入: "leetcode"
輸出: "leotcede"
複製程式碼
思考:
用雙指標,兩個指標分別從左右兩端尋找母音字母,找到後交換位置即可。
複製程式碼
實現:
class Solution {
public String reverseVowels(String s) {
String dict = "aeoiuAEOIU";
char[] array = s.toCharArray();
int left = 0;
int right = array.length - 1;
while (left < right) {
while (left < right && (dict.indexOf(array[left]) < 0)) {
left++;
}
while (left < right && (dict.indexOf(array[right]) < 0)) {
right--;
}
if (left < right) {
char temp = array[left];
array[left] = array[right];
array[right] = temp;
left++;
right--;
}
}
return new String(array);
}
}複製程式碼