728x90
https://codingdojang.com/scode/465?answer_mode=hide
문자열 압축하기
- 문자열을 입력받아 같은 문자가 연속으로반복되는 경우 그 반복횟수를 표시하여 문자열을 압축하기
String zip = "aaabbccccccd";
char[] zipArray = zip.toCharArray();
String result = String.valueOf(zipArray[0]); //a부터 시작
int number = 1;
for (int i = 0; i < zipArray.length - 1; i++) {
if(zipArray[i] == zipArray[i + 1]) { //다음으로 오는 문자와 중복될 경우
number++;
} else {
result += String.valueOf(number); //반복횟수 추가
result += String.valueOf(zipArray[i + 1]); //중복되지 않은 다음문자 추가
number = 1;
}
if (i == zipArray.length - 2) { //if (i + 1 == zipArray.length - 1)
result += number; //마지막 문자에도 횟수 표시하기
}
}
System.out.println(result);
[실행결과]
a3b2c6d1
'코딩도장' 카테고리의 다른 글
Spiral Array (0) | 2021.07.13 |
---|---|
CamelCase를 Pothole_case 로 바꾸기! (0) | 2021.07.13 |
모스부호 해독 (0) | 2021.07.13 |