码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode-Reverse Vowels of a String

时间:2016-07-19 09:34:26      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:

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".
public class Solution {
    private final char[] vowels={‘a‘, ‘e‘, ‘i‘, ‘o‘, ‘u‘, ‘A‘, ‘E‘, ‘I‘, ‘O‘, ‘U‘};
    public String reverseVowels(String s) {
        char[] sArray=s.toCharArray();
        
        int l=0; 
        int r=sArray.length-1;
        while(l<r){
            if(isVowel(sArray[l]) && isVowel(sArray[r])){
                char temp=sArray[l];
                sArray[l]=sArray[r];
                sArray[r]=temp;
                
                r--;
                l++;
            }
            else if(isVowel(sArray[l])){
                r--;
            }
            else if(isVowel(sArray[r])){
                l++;
            }
            else{
                l++;
                r--;
            }
        }
        return new String(sArray);
        
    }
    
    public boolean isVowel(char c){
        for(int i=0; i<vowels.length; i++){
            if(c==vowels[i]){
                return true;
            }
        }
        return false;
    }
}

 

LeetCode-Reverse Vowels of a String

标签:

原文地址:http://www.cnblogs.com/incrediblechangshuo/p/5683310.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!