LeetCode—反轉字符串中的元音字母(雙指針)

反轉字符串中的元音字母(簡單)

2020年6月18日

題目來源:力扣

在這裏插入圖片描述

解題

  • 雙指針
class Solution {
    public String reverseVowels(String s) {
        if(s==null || s.length()==0) return s;
        int l=0;
        int r=s.length()-1;
        char[] cc=s.toCharArray();
        while(l<r){
            if(isyuanyin(cc[l]) || isyuanyin(cc[r])){
                if(isyuanyin(cc[l]) && isyuanyin(cc[r])){
                    char ch=cc[r];
                    cc[r]=cc[l];
                    cc[l]=ch;
                    l++;
                    r--;
                }
                else if(isyuanyin(cc[l]))
                    r--;
                else if(isyuanyin(cc[r]))
                    l++;
            }
            else{
                l++; r--;
            }
        }
    return new String(cc);
    }
    public boolean isyuanyin(char ch){
        if(ch=='a'||ch=='e'||ch=='i'||ch=='o'||ch=='u'||ch=='A'||ch=='E'||ch=='I'||ch=='O'||ch=='U')
            return true;
        return false;
    }
}

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章