345. Reverse Vowels of a String

2018-09-28  本文已影响0人  SilentDawn

Problem

Write a function that takes a string as input and reverse only the vowels of a string.
Note:
The vowels does not include the letter "y".

Example

Input: "hello"
Output: "holle"
Input: "leetcode"
Output: "leotcede"

Code

static int var = [](){
    std::ios::sync_with_stdio(false);
    cin.tie(NULL);
    return 0;
}();
class Solution {
public:
    string reverseVowels(string s) {
        char temp = 0;
        for(int i=0,j=s.size()-1;i<j;){
            if(s[i]=='a'||s[i]=='e'||s[i]=='i'||s[i]=='o'||s[i]=='u'||s[i]=='A'||s[i]=='E'||s[i]=='I'||s[i]=='O'||s[i]=='U'){
                if(s[j]=='a'||s[j]=='e'||s[j]=='i'||s[j]=='o'||s[j]=='u'||s[j]=='A'||s[j]=='E'||s[j]=='I'||s[j]=='O'||s[j]=='U'){
                    temp = s[i];
                    s[i] = s[j];
                    s[j] = temp;
                    i++;
                    j--;
                }else{
                    j--;
                }
            }else{
                i++;
            }
        }
        return s;
    }
};

Result

345. Reverse Vowels of a String.png
上一篇 下一篇

猜你喜欢

热点阅读