左旋字串

2021-07-04 15:31:52 字數 679 閱讀 9518

/**

* 定義字串左旋轉操作:把字串前面的若干個字元移動到字串尾部,如把字串"abcdef"左旋轉 2位得到字串 "cdefab"。

* 請實現字串左旋轉的函式,要求對長度為 n 的字串操作的時間複雜度為 o(n),空間複雜度為 o(1)。

* @author administrator

* */

public class leftshiftstring

char temp;

while (begin < end)

}/**

* 通過三次翻轉來實現左旋

* @param str

* @param n

*/public static void leftshift(char str, int n)

n = n % str.length;

reverse(str, 0, n - 1);

reverse(str, n, str.length - 1);

reverse(str, 0, str.length - 1);

}public static void main(string args) ;

leftshift(str, 2);

system.out.println(str);

}}

左旋字串

1.問題描述 字串的左旋操作是把字串前面的若干個字元轉移到字串的尾部。請定義乙個函式實現字串左旋轉操作的功能。比如輸入字串 abcdefg 和數字2,該函式將返回左旋轉2位得到的結果 cdefgab 來自 劍指offer 2.分析 其實和翻轉單詞順序差不多,我們可以先將前面2位翻轉得到 ba,在將後...

左旋字串

題目要求 實現乙個函式,可以左旋字串中的k個字元。右旋字串同理 例如 abcde左旋兩個字串得到cdeab 如下 編譯環境為vs2013 define crt secure no warnings 1 include include include include 三步翻轉法 void revers...

左旋字串

題目 實現字串左旋k個字元,如 abcdef 左旋乙個字元,變為 bcdefa 左旋兩個字元,變為 cdefab 分析 首先需考慮左旋的字元個數與字串的長度之間的關係,在本題中,字串長度為6,如果k為7,則相當 於左旋乙個字元,所以,要對k進行處理,得到有效的旋轉次數。1,方法一 迴圈前移字元 分析...