leetcode_打卡5
思路:双指针
class Solution {
public String reverseVowels(String s) {
int n=s.length();
char[] arr=s.toCharArray();
int i=0;
int j=n-1;
while(i<j){
while(i<n&& !yuanyin(arr[i])){
i++;
}
while(j>0 && !yuanyin(arr[j])){
j--;
}
if(i<j) {
swap(arr,i,j);
i++;
j--;
}
}
return new String(arr);
}
public boolean yuanyin(char ch){
return "aeiouAEIOU".indexOf(ch)>=0;
}
public void swap(char[] arr,int i,int j){
char temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
定义和用法
indexOf()
方法返回值在字符串中第一次出现的位置。
如果未找到该值,则 indexOf()
方法返回 -1
。
indexOf()
方法区分大小写。