字串迴圈左移

2021-08-16 08:41:38 字數 829 閱讀 4940

問題描述:給定乙個字串s[0...n-1],要求把s的前k個字元移動到s的尾部,如把字串"abcdef"前面的2個字元「a」和「b」移動到字串的尾部,得到新的字串"cdefab";即字串迴圈左移k。

演算法分析:把abcdef看成是由x=ab和y=cdef組成,由矩陣轉稚公式(x`y`)`=yx,

如x = ab   x`=ba   y=cdef    y`=fedc  所以只需要把x和y都轉稚後,再整體轉稚就可以實現迴圈左移

**:

public static void 

main(string args)

}/**

* 把字串的前k個移動到陣列的尾部

*@param

array

*@paramk*

@return

*/public static void

loopright(char array, int k)

for(int i = k;ilength

;i++)

reversestr(array);

}/**

* 翻轉字串

*@param

array

*@return

*/public static void

reversestr(char array)

}

迴圈左移字串

題目 字串的左旋轉操作是把字串前面的若干字元轉移到字串的尾部。請定義乙個函式實現字串左旋轉操作的功能。比如輸入字串 abcdefg 和陣列2,該函式將返回左旋轉2位得到的結果 cdefgab 分析 通過reverse操作 乙個序列abcdefg,如果向左迴圈移動n位,例如2位,則會程式設計 defg...

字串迴圈左移

給定乙個字串s,要求把s的前k個字元移動到s的尾部,如把字串 abcdef 前面的2個字元 a b 移動到字串的尾部,得到新字串 cdefab 稱作字串迴圈左移k位。輸入乙個字串和乙個非負整數n,要求將字串迴圈左移n次。可以使用以下語句實現字串s的輸入 s str input 可以使用以下語句實現非...

字串迴圈左移

給定乙個字串s,要求把s的前k個字元移動到s的尾部,如把字串 abcdef 前面的2個字元 a b 移動到字串的尾部,得到新字串 cdefab 稱作字串迴圈左移k位。輸入乙個字串和乙個非負整數n,要求將字串迴圈左移n次。可以使用以下語句實現字串s的輸入 s str input 可以使用以下語句實現非...