문제 1.3 URL화: 문자열에 들어 있는 모든 공백을 ‘%20’으로 바꿔 주는 메서드를 작성하라. 최종적으로 모든 문자를 다 담을 수 있을 만큼 충분한 공간이 이미 확보되어 있으며 문자열의 최종 길이가 함께 주어진다고 가정해도 된다(자바로 구현한다면 배열 안에서 작업할 수 있도록 문자 배열(character array)을 이용하길 바란다). 입력: “Mr John Smith”, 13 출력: “Mr%20John%20Smith” 제한 사항 공백은 스페이스 몇 개이든 상관이 없는가? 충분한 공간이 이미 확보 -> 이게 무슨 말인지?, 공간복잡도를 O(1)로 풀라는 이야기인가?, 공간을 사용해도 된다는 이야기인가? 최종 길이가 함께 주어진다. 아이디어1 문자열을 하나하나 검사한다. 새로운 문자 변수에 공백이 ..
문제 1.2 순열 확인 : 문자열 두 개가 주어졌을 때 이 둘이 서로 순열 관계에 있는지 확인하는 메서드를 작성하라. 제한 사항 순열 관계가 무엇인지 알아야 함. -> 같은 문자로 구성 되었지만 순서가 다른 문자열. 문자열 길이의 제한이 없다. 문자 또한 알파벳에 대한 제한이 없다. 주어진 문자열의 순서를 바꾸어도 되는지에 대한 제한이 없다. 두 문자열의 길이가 다르면 False다. 아이디어1 각각의 문자열을 정렬한다. -> O(nlogn) 앞에서 부터 한 문자 비교한다. -> O(n) 공간복잡도 주어진 문자열을 건드려서 안되면 O(n) 상관없다면 O(1) 시간복잡도 O(nlogn) 아이디어2 하나의 문자열의 문자를 키로 해쉬테이블을 만든다. 해쉬테이블의 값은 하나의 문자열 문자의 카운트를 한다. 다음 ..