标签:字符串 leetcode 九章算法 lintcode 面试题
http://www.jiuzhang.com/problem/55/
给一个字符串和一个旋转的偏移量offset,将字符串循环右移offset位。
如:"abcdefg" 循环右移 4位之后变为了:"defgabc"
要求做到O(1)的额外空间耗费,O(n)的时间
采用三步反转法。
以S="abcdefg" offset=4为例子
首先将字符串看做:"abc"+"defg"
先整体反转:得到 "gfed" + "cba"
然后各自反转:得到“defg” + "abc" = "defgabc"
时间复杂度O(n),额外空间复杂度O(1)
标签:字符串 leetcode 九章算法 lintcode 面试题
原文地址:http://blog.csdn.net/jiuzhang_ninechapter/article/details/45681053