코딩도장
문자열 압축하기
김T준
2021. 7. 13. 15:43
728x90
https://codingdojang.com/scode/465?answer_mode=hide
코딩도장
프로그래밍 문제풀이를 통해서 코딩 실력을 수련
codingdojang.com
문자열 압축하기
- 문자열을 입력받아 같은 문자가 연속으로반복되는 경우 그 반복횟수를 표시하여 문자열을 압축하기
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