劍指Offer JZ43 左旋轉字串 C 實現

2021-10-09 21:06:44 字數 572 閱讀 5095

組合語言中有一種移位指令叫做迴圈左移(rol),現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s=」abcxyzdef」,要求輸出迴圈左移3位後的結果,即「xyzdefabc」。是不是很簡單?ok,搞定它!

1、思路:當k小於字串長度時,迴圈左移k位就是把字串前k位放到字串末尾。

2、**:

class solution 

for (int i = 0; i < n; i++)

return result;

}};

3、複雜度:

時間複雜度:o(n);

空間複雜度:o(n)。

1、思路:當k小於字串長度時,可以先反轉前k位字元,再反轉第k+1到第n位字元,最後將字串整體反轉,就可以得到迴圈左移k位的效果,這樣做還是比較巧妙的。

2、**:

class solution 

};

3、複雜度:

時間複雜度:o(n);

空間複雜度:o(1)。

劍指43 左旋轉字串

組合語言中有一種移位指令叫做迴圈左移 rol 現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s abcxyzdef 要求輸出迴圈左移3位後的結果,即 xyzdefabc 是不是很簡單?ok,搞定它!思路1 字串翻轉的應用。...

43 劍指offer 左旋轉字串

題目描述 組合語言中有一種移位指令叫做迴圈左移 rol 現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s abcxyzdef 要求輸出迴圈左移3位後的結果,即 xyzdefabc 是不是很簡單?ok,搞定它!解題思路 本題...

劍指offer 43 左旋轉字串

題目 組合語言中有一種移位指令叫做迴圈左移 rol 現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於乙個給定的字串行s,請你把其迴圈左移k位後的序列輸出。例如,字串行s abcxyzdef 要求輸出迴圈左移3位後的結果,即 xyzdefabc 是不是很簡單?ok,搞定它!思路 首先取得字串...