1. 程式人生 > >組合語言中有一種移位指令叫做迴圈左移(ROL),現在有個簡單的任務,就是用字串模擬這個指令的運算結果。對於一個給定的字元序列S,請你把其迴圈左移K位後的序列輸出。例如,字元序列S=”abcXYZde

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

這道題要注意字串為空的情況,否則通不過 

public class Solution {
    public String LeftRotateString(String str,int n) {
            StringBuffer buf=new StringBuffer();
        int length=str.length();
        if(length==0)
        	return "";
        buf.append(str);
        String str1=buf.substring(0,n);
        System.out.println(str1);
        String str2=buf.substring(n, str.length());
        System.out.println(str2);
        str1=new StringBuffer(str1).reverse().toString();
        str2=new StringBuffer(str2).reverse().toString();
        return new StringBuffer(str1+str2).reverse().toString();
    }
}