public boolean checkRotate(String targetStr, String checkStr) {
if (targetStr.length() != checkStr.length()) {
return false;
}
char[] oldChar = targetStr.toCharArray();
char[] checkChar = checkStr.toCharArray();
String result = new String();
int index = 0;
for (int i = 0; i < oldChar.length - 1; i++) {
if (oldChar[0] == checkChar[i + 1]) {
index = i + 1;
result += oldChar[0];
break;
}
}
for (int i = 1; i < checkChar.length; i++) {
int remain = (i + index) % checkChar.length;
result += checkChar[remain];
}
return targetStr.equals(result);
}
'프로그래밍 > 알고리즘' 카테고리의 다른 글
Stack(TwoStack) (0) | 2017.02.24 |
---|---|
Stack(getMin) (0) | 2017.02.24 |
문자열 치환 (0) | 2017.02.24 |
mergeSort (0) | 2017.02.24 |
계산기(stack) (0) | 2017.02.24 |