给定一个字符串和一个偏移量,根据偏移量旋转字符串(从左向右旋转)

class Solution {
public:
    /*
     * @param str: An array of char
     * @param offset: An integer
     * @return: nothing
     */
    void rotateString(string &str, int offset) {
        // write your code here
        if(str.size()==0){//字符串为空
            return ;
        }
        if(offset==0){//位移量为零
            return ;
        }
        while(1){//位移量大于字符串长度
        if(offset>=str.size()){
            offset=offset-str.size();
        }else if(offset             break;
        }
        }
        stack ss; 
        for(int i=str.size()-1;i>=str.size()-offset;i--){
            ss.push(str[i]);
        }
        string li;
        for(int i=i=0;i             li[i]=str[i];
        }
        for(int i=0;i             str[i]=ss.top();
            ss.pop();
        }
        for(int i=offset;i             str[i]=li[i-offset];
        }
        return ;
    }
};

你可能感兴趣的:(给定一个字符串和一个偏移量,根据偏移量旋转字符串(从左向右旋转))