《程式猿筆試題系列》之 左旋轉字串

題目描述

組合語言中有一種移位指令叫做迴圈左移(ROL),現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於一個給定的字元序列S,請你把其迴圈左移K位後的序列輸出。例如,字元序列S=”abcXYZdef”,要求輸出迴圈左移3位後的結果,即“XYZdefabc”。是不是很簡單?OK,搞定它!

示例

輸入 “abcXYZdef”,3輸出 “XYZdefabc”

思路分析

其實就是就是要將一個字串,按照輸入的數字,進行切割成2組字串,然後將第一份字串拼接到後面去就可以了。這個題目需要注意下邊界值等。

public String LeftRotateString(String str, int n) { if (n > str。length()) { return “”; } if(n==0 || str。length()==n){ return str; } String tmp=“”; for(int i=0;i

第二個就是使用我們String函式庫的方法了

public String LeftRotateString2(String str, int n) { if (n > str。length()) { return str; } return str。substring(n) + str。substring(0, n); }

/**歡迎關注微信公眾號:Java的學習之路資料非常全,java初級到高階都有,影片,電子書,面試寶典,簡歷模板,經典案例,原始碼分析。目錄 http://mp。weixin。qq。com/mp/homepage?__biz=MzUzMjA2NDU2OQ==&hid=19&sn=c193d89a0fb5d4c67c8c9d399712ca62&scene=18%23wechat_redirect框架 http://mp。weixin。qq。com/mp/homepage?__biz=MzUzMjA2NDU2OQ==&hid=3&sn=e693a1ac2f05398a9bc0adcdbc5d28a9&scene=18%23wechat_redirect影片及開發工具 http://mp。weixin。qq。com/mp/homepage?__biz=MzUzMjA2NDU2OQ==&hid=4&sn=6245b5f07da976ba7df67ba39a9fa8d1&scene=18#wechat_redirect面試技巧及簡歷 http://mp。weixin。qq。com/mp/homepage?__biz=MzUzMjA2NDU2OQ==&hid=7&sn=674252f32c8585f9e62b5b87335e5a83&scene=18#wechat_redirect */