問題描述
給定乙個字串和乙個偏移量,根據偏移量旋轉字串(從左向右旋轉)問題分析樣例 對於字串 「abcdefg」.
offset=0 => 「abcdefg」
offset=1 => 「gabcdef」
offset=2 => 「fgabcde」
offset=3 => 「efgabcd」
偏移量%字串長度:真正的偏移量**可以這樣理解,假設offset=100000,字串長度為7,按照正常的思路旋轉,中間會有好多重複的步數,則100000%7為真正需要旋轉的步數,知道步數,將字串中的字元按照指定步數旋轉。剩下的就是簡單的陣列操作。
需要注意是,有一種特殊情況,就是字串為空,要提前判斷。
class
solution else
str[0] = temp;}}
}};
這個**重複進行多次陣列操作,時間上有些不足。**改進
class
solution else
str = str1 + str2;}}
};
**思路新定義了兩個string變數,str1裝字串後面需要移動的子串,str2裝前面的子串,最後合併兩個子串重新為str賦值。這樣做只需要遍歷一遍字串就可以了。
LintCode 8 反轉字串
給定乙個字串 以字元陣列的形式給出 和乙個偏移量,根據偏移量原地旋轉字串 從左向右旋轉 offset 0 str的長度 0輸入 str abcdefg offset 3 輸出 str efgabcd 樣例解釋 注意是原地旋轉,即str旋轉後為 efgabcd 輸入 str abcdefg offse...
一次過 Lintcode 8 旋轉字串
給定乙個字串 以字元陣列的形式給出 和乙個偏移量,根據偏移量原地旋轉字串 從左向右旋轉 樣例 1 輸入 str abcdefg offset 3 輸出 str efgabcd 樣例解釋 注意是原地旋轉,即str旋轉後為 efgabcd 樣例 2 輸入 str abcdefg offset 0 輸出 ...
《Lintcode簽到》8 旋轉字串
描述 給定乙個字串 以字元陣列的形式給出 和乙個偏移量,根據偏移量原地旋轉字串 從左向右旋轉 樣例 1 輸入 str abcdefg offset 3 輸出 str efgabcd 樣例解釋 注意是原地旋轉,即str旋轉後為 efgabcd 樣例 2 輸入 str abcdefg offset 0 ...