CodeWars 스물 두 번째 문제
Updated:
Counting Duplicates
public static int duplicateCount(String text) {
char[] letters = text.toLowerCase().toCharArray();
Arrays.sort(letters);
int letterCount = 0;
int duplicateCount = 0;
for(int i = 1; i < letters.length; i++) {
if(letters[i-1] == letters[i]) {
letterCount++;
if(letterCount == 1) {
duplicateCount++;
}
} else {
letterCount = 0;
}
}
return duplicateCount;
}
*나름 동적을 짜려고 했으나.. 굳이 char 배열로 바꾸지 않고 할 수 있는 더 좋은 코드가 있었다. 쓰벌 하 갈길이 멀다.
*subString에 대해서 조금 관찰할 필요가 있어 보인다. String post를 업데이트 해야겠다.
public static int duplicateCount(String text) {
int duplicateCount = 0;
text = text.toUpperCase();
while(text.length() > 0) {
String firstLetter = text.substring(0,1);
text = text.substring(1);
if(text.contains(firstLetter)) {
duplicateCount++;
}
text = text.replace(firstLetter, "");
}
return duplicateCount;
}