剑指offer--左旋转字符串

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_40921797/article/details/82147266

汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!

class Solution {
public:
    string LeftRotateString(string str, int n) 
    {
        int size = str.length();
        if(size <= 1)
            return str;
        n = n % (size);
        while(n--)
        {
            char ch = str[0];
            int i = 0;
            for(i = 0;i < size-1;i++)
            {
                str[i] = str[i+1];
            }
            str[i] = ch;
        }
        return str;
    }
};

猜你喜欢

转载自blog.csdn.net/weixin_40921797/article/details/82147266