給定乙個字串(以字元陣列的形式給出)和乙個偏移量,根據偏移量原地旋轉字串(從左向右旋轉)。
offset >= 0
the length of str >= 0
make changes on the original input data
說明
原地旋轉意味著你要在s本身進行修改。你不需要返回任何東西。
樣例 1:輸入: str=「abcdefg」, offset = 3 輸出: str = 「efgabcd」 樣例解釋:
注意是原地旋轉,即str旋轉後為"efgabcd"
樣例 2:輸入: str=「abcdefg」, offset = 0 輸出: str = 「abcdefg」 樣例解釋:
注意是原地旋轉,即str旋轉後為"abcdefg"
樣例 3:輸入: str=「abcdefg」, offset = 1 輸出: str = 「gabcdef」 樣例解釋:
注意是原地旋轉,即str旋轉後為"gabcdef"
樣例 4:輸入: str=「abcdefg」, offset =2 輸出: str = 「fgabcde」 樣例解釋:
注意是原地旋轉,即str旋轉後為"fgabcde"
樣例 5:我的**輸入: str=「abcdefg」, offset = 10 輸出: str = 「efgabcd」 樣例解釋:
注意是原地旋轉,即str旋轉後為"efgabcd"
public class solution else
for(int i=0;ifor(int i=0;ielse}}
}}
思路
str.length==0
判斷輸入char
是否為空,如果是空,不作改變。
offset1 = offset%(str.length)
當offset
大於陣列長度時,需要對offset取餘。
根據取餘後的offset1
作為分界點,得到倆個新的char
,分別strfirst
、strlast
。
賦值給原str
實現原地旋轉。
演算法題 左旋轉字串
題目描述 組合語言中有一種移位指令叫做迴圈左移 rol 現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s abcxyzdef 要求輸出迴圈左移3位後的結果,即 xyzdefabc 是不是很簡單?ok,搞定它!分析 迴圈左移...
8 LintCode演算法題 旋轉字串
本人的拙見,不保證為最佳演算法,只為通過本題。8.旋轉字串 中文english 給定乙個字串 以字元陣列的形式給出 和乙個偏移量,根據偏移量原地旋轉字串 從左向右旋轉 樣例樣例 1 輸入 str abcdefg offset 3 輸出 str efgabcd 樣例解釋 注意是原地旋轉,即str旋轉後...
Python程式設計題41 原地反轉字串
針對乙個字串,該字串是以字元列表的形式存在,請編寫乙個函式,實現將字串反轉過來。例如 給定乙個字元列表 h e l l o 返回結果 o l l e h 給定乙個字元列表 h a n n a h 返回結果 h a n n a h 說明 def reversestring s left,right 0...