您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“LeetCode如何反轉字符串中的元音字母”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“LeetCode如何反轉字符串中的元音字母”這篇文章吧。
1,問題簡述
編寫一個函數,以字符串作為輸入,反轉該字符串中的元音字母。
2,示例
示例 1:
輸入:"hello"
輸出:"holle"
示例 2:
輸入:"leetcode"
輸出:"leotcede"
提示:
元音字母不包含字母 "y" 。
3,題解程序
雙指針的使用
4,題解程序
import java.util.HashSet;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class ReverseVowelsTest {
public static void main(String[] args) {
String s = "hello";
String reverseVowels = reverseVowels(s);
System.out.println("reverseVowels = " + reverseVowels);
}
public static String reverseVowels(String s) {
HashSet<Character> hashSet = new HashSet<>(Stream.of('a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U').collect(Collectors.toList()));
if (s == null || s.length() == 0) {
return s;
}
int i = 0;
int j = s.length() - 1;
char[] result = new char[s.length()];
while (i <= j) {
char ci = s.charAt(i);
char cj = s.charAt(j);
if (!hashSet.contains(ci)) {
result[i++] = ci;
} else if (!hashSet.contains(cj)) {
result[j--] = cj;
} else {
result[i++] = cj;
result[j--] = ci;
}
}
return new String(result);
}
}
5,題解程序圖片版
以上是“LeetCode如何反轉字符串中的元音字母”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。