問題描述:給定乙個字串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 voidmain(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 可以使用以下語句實現非...