0
点赞
收藏
分享

微信扫一扫

917.仅仅反转字母

船长_Kevin 2022-01-28 阅读 49
class Solution {
    public String reverseOnlyLetters(String s) {
        int left = 0, right = s.length() - 1;
        char[] result = s.toCharArray();
        while(left < right){
            while(left < right && !Character.isLetter(result[left])) ++left;
            while(left < right && !Character.isLetter(result[right])) --right;
            if(left < right) swap(result, left++, right--);
        }
        return new String(result);
    }

    public void swap(char[] s, int left, int right){
        char temp = s[left];
        s[left] = s[right];
        s[right] = temp;
    }
}
举报

相关推荐

0 条评论