当前位置 博文首页 > L_add的博客:C++ ---仅仅翻转字符

    L_add的博客:C++ ---仅仅翻转字符

    作者:[db:作者] 时间:2021-08-15 22:17

    仅仅翻转字符

    题目描述:
    给定一个字符串 S,返回 “反转后的” 字符串,其中不是字母的字符都保留在原地,而所有字母的位置发生反转。
    在这里插入图片描述
    题目来源:力扣

    class Solution {
    public:
        bool IsLetter(char ch)
        {
            if((ch >='a'&& ch <='z')
                ||(ch >='A'&&ch <='Z'))
                return true;
            else
                return false;
        }
        string reverseOnlyLetters(string s) {
            if(s =="")
                return s;
            size_t begin = 0,end = s.size()-1;
            while(begin < end)
            {
                while(begin < end &&!IsLetter(s[begin]))
                    begin++;
                while(begin < end&& !IsLetter(s[end]))
                    end--;
                swap(s[begin],s[end]);
                begin++;
                end--;
            }
            return s;
        }
    };
    
    cs