原地交换

public class Solution {
    /**
     * 反转字符串
     * @param str string字符串 
     * @return string字符串
     */
    public String solve (String str) {
        // write code here
        //将字符串变为数组
        char []cstr=str.toCharArray();
        int len=str.length();
        //数组0和len-1进行交换
        //0+len-1=len-1;
        //故i对应的要交换的数组下标为为len-1-i
        for(int i=0;i<len/2;i++){
            char t=cstr[i];
            cstr[i]=cstr[len-1-i];
            cstr[len-i-1]=t;
        }
        return new String(cstr);
    }
}

空间复杂度大小为O(1) 时间复杂度大小为O(n)