1. 程式人生 > >【LeetCode】345. 反轉字串中的母音字母(Reverse Vowels of a String)

【LeetCode】345. 反轉字串中的母音字母(Reverse Vowels of a String)

英文練習 | 中文練習

題目描述: 編寫一個函式,以字串作為輸入,反轉該字串中的母音字母。

示例:

輸入: "hello"
輸出: "holle"

解題思路: 雙指標典型題目,注意母音字母不要只考慮小寫的。

public String reverseVowels(String s) {
	
    if(s == null || s.length() == 0) return s;
        
    char[] c = s.toCharArray();
    int pre = 0, last = c.length - 1;
    while
(last > pre){ while(last > pre && !isVowel(c[last])) last--; while(last > pre && !isVowel(c[pre])) pre++; if(last > pre){ char t = c[last]; c[last] = c[pre]; c[pre] = t; } last--
; pre++; } return new String(c); } public boolean isVowel(char c){ c = Character.toLowerCase(c); if(c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') return true; return false; }