LintCode_008_旋转字符串

来源:互联网 发布:cmd ftp 指定端口 编辑:程序博客网 时间:2024/05/29 16:35

问题描述

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

样例

对于字符串 “abcdefg”.

offset=0 => “abcdefg”
offset=1 => “gabcdef”
offset=2 => “fgabcde”
offset=3 => “efgabcd”

求解

翻转前一半,翻转后一半,整体翻转

class Solution{  public:    void rotateString(string &str, int offset)    {        if (!str.empty())        {            offset %= str.length();            reverse(str.begin(), str.begin() + str.length() - offset);            reverse(str.begin() + str.length() - offset, str.end());            reverse(str.begin(), str.end());        }    }};
原创粉丝点击