利用下标去访问,在判断是不是字符,最后交换后再去前后加加就可以了
class Solution {
public:
bool source(char monitor)
{
if (monitor >= 'a' && monitor <= 'z')
return true;
if (monitor >= 'A' && monitor <= 'Z')
return true;
return false;
}
string reverseOnlyLetters(string s) {
size_t skim, scroll;
skim = 0;
scroll = s.size() - 1;
while (skim < scroll)
{
while (skim < scroll && !source(s[skim]))
skim++;
while (skim < scroll && !source(s[scroll]))
scroll--;
swap(s[skim], s[scroll]);
skim++;
scroll--;
}
return s;
}
};