首页 > 代码库 > 345. Reverse Vowels of a String

345. Reverse Vowels of a String

Write a function that takes a string as input and reverse only the vowels of a string.

Example 1:
Given s = "hello", return "holle".

Example 2:
Given s = "leetcode", return "leotcede".

 思路:双指针首位夹逼,转成array来swap相对应的vowel,最后输出新的string

118/145

public class Solution {    public String reverseVowels(String s) {        ArrayList<Character> check=new ArrayList<Character>();        check.add(‘a‘);        check.add(‘e‘);        check.add(‘i‘);        check.add(‘o‘);        check.add(‘u‘);        check.add(‘A‘);        check.add(‘E‘);        check.add(‘I‘);        check.add(‘O‘);        check.add(‘U‘);                char[] transfer=s.toCharArray();                int i=0;        int j=transfer.length-1;        while(i<j)        {            if(!check.contains(transfer[i]))            {                i++;                continue;            }            if(!check.contains(transfer[j]))            {                j--;                continue;            }            char temp=transfer[i];            transfer[i]=transfer[j];            transfer[j]=temp;            i++;            j--;        }        return new String(transfer);}}

 

345. Reverse Vowels of a String