カジュアルワーキング
左回転(ROL)と呼ばれるアセンブリ言語命令のシフトがあり、そして今、この命令は、文字列操作の結果によってシミュレートされ、簡単なタスクがあります。指定された文字列Sの場合、あなたはKビットのシリアル出力した後、その左の円を入れました。例えば、文字列S =「abcXYZdef」は、三つ、即ち「XYZdefabc」後に必要な出力結果を左回転させました。それは単純ではないですか?OK、それを得ます!
思考
- ループは、最初のビットの数は、最初のモジュロ演算文字列の所定の長さ以上であってもよいです。
- StringBuilderの文字列を行うの可変特性を持つ兄弟は、操作を追加します。
コード
public String LeftRotateString(String str,int n) {
int len=str.length();
if(len==0) return "";
int w=n%len;
if(w==len) return str;
char [] chars=str.toCharArray();
StringBuilder builder=new StringBuilder();
for(int i=w;i<len;i++){
builder.append(chars[i]);
}
for(int j=0;j<w;j++){
builder.append(chars[j]);
}
String s=builder.toString();
return s;
}