首尾交换,直到中间下标处

class Solution {
public:
    string solve(string str) {
        int len = str.size();
        for(int i=0; i<len/2; ++i){
            char t = str[i];
            str[i] = str[len-1-i];
            str[len-1-i] = t;
        }
        return str;
    }
};

双下标

class Solution {
public:
    string solve(string str) {
        int i=0, j=str.size()-1;
        while(i<j){
            char t = str[i];
            str[i] = str[j];
            str[j] = t;
            ++i;--j;
        }
        return str;
    }
};