Leetcode Java Adding Spaces to a String
업데이트:
문제
코드
class Solution {
public String addSpaces(String s, int[] spaces) {
StringBuilder sb = new StringBuilder();
char[] charArray = s.toCharArray();
int i = 0;
for (int space : spaces) {
while (i < space) {
sb.append(charArray[i++]);
}
sb.append(' ');
}
while (i < charArray.length) {
sb.append(charArray[i++]);
}
return sb.toString();
}
}
결과
설명
-
문자열 s에서 각 spaces의 값들의 위치에 띄어쓰기(“ “)를 추가하는 문제이다.
- 문제 풀이에 필요한 변수를 정의한다.
- sb는 동적인 문자열 생성에 필요한 변수로, StringBuilder로 초기화한다.
- charArray는 문자열 s를 문자 배열로 변환한 변수이다.
- i는 문자열 위치를 저장할 변수로, 0으로 초기화한다.
- spaces의 각 값을 space에 순차적으로 넣어 아래를 수행한다.
- i가 space 미만일 때 까지 sb에 charArray[i] 문자를 넣어준 후 i를 증가시켜준다.
- 반복이 완료되면 sb에 띄어쓰기(“ “)를 추가한다.
-
공백이 모두 추가되면 i가 charArray의 길이 미만까지 sb에 나머지 문자를 넣어준다.
- 모든 반복이 완료되어 완성된 sb를 문자열로 변환하여 주어진 문제의 결과로 반환한다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기