LintCode 8 旋轉字串

2021-08-15 00:09:06 字數 785 閱讀 4513

問題描述

給定乙個字串和乙個偏移量,根據偏移量旋轉字串(從左向右旋轉)

樣例 對於字串 「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 ...