反转字符串中的元音字符
345. Reverse Vowels of a String (Easy)
Given s = "leetcode", return "leotcede"
题目描述:
??给定一个字符串,将字符串中的元音字母交换,返回交换后的字符串。
思路分析:
??使用双指针指向待反转的两个元音字符,一个指针从头向尾进行遍历,一个指针从尾到头遍历。
代码:
private final static HashSet<Character>vowels=new HashSet<>(Arrays.asList('a','e','i','o','u','A','E','I','O','U'));
public String reverseVowels(String s){
int i=0;
int j=s.length()-1;
char []res=new char [s.length()];
while(i<=j){
char ci=s.charAt(i)
char cj=s.charAt(j)
if(!vowels.contains(ci)){
res[i++]=ci;
}else if(!vowels.contains(cj)){
res[j--]=cj;
}else{
res[i++]=cj;
res[j--]=ci;
}
}
return new String(res);
}
原文地址:https://www.cnblogs.com/yjxyy/p/11104389.html
时间: 2024-10-08 02:59:37