바위타는 두루미

1.3 URL화 본문

Study/Interview준비

1.3 URL화

DoRoMii 2019. 7. 24. 18:45
728x90

문제

문자열에 들어있는 모든 공백을 '%20'으로 바꾸어 주는 메서드를 작성하라. 최종적으로 모든 문자를 다 담을 수 있을 만큼 충분한 공간이 이미 확보되어 있으며 문자열의 최종 길이가 함께 주어진다고 가정해도 된다. 

입력 : 'Mr John Smith',13

출력 : 'Mr%20John%20Smith

 

해결법

입력문자열을 한번 읽어서 공백의 갯수를 확인 한 후에, (공백갯수 *3 + 전체 문자열의 길이)를 새로운 문자열의 길이로 생각하고 그 위치부터 원래 문자열의 가장 끝부분부터 읽어나가며 복사하여 새로운 문자열을 구성한다. 

뒤에서부터 읽어서 문자인 경우에는 그대로 복사하고 공백인 경우에는 '%20'을 복사하며 문자열을 만들어나가면 된다.

뒤에서 부터 조작하는 이유는 덮어쓰여질 걱정 하지 않고 문자들을 복사해 나갈 수 있기 때문이다. 

'Study > Interview준비' 카테고리의 다른 글

1.6 문자열 압축  (0) 2019.07.25
1.5 하나빼기  (0) 2019.07.25
1.4 회문 순열  (0) 2019.07.25
1.2 순열확인  (0) 2019.07.24
1.1 중복이 없는가  (0) 2019.07.24
Comments