코드카타 5

이재현·2021년 6월 25일

공통된 시작단어를 반환하는 문제였다.

비교를 위해 checkStr하나를 선언해준뒤,

입력된 strs가 비어있는 값이 아니면 checkStr에 저장,
비어있을 경우 공통된 시작단어는 당연히 없으므로 ""를 리턴해준다.

변수명이 뭔가 이상해보이지만,,, 같은 글자의 위치?인덱스를 -1로 초기설정해준다.
0이 아닌 -1인 이유는 String에서 0번이 맨 앞을 뜻하기 때문이다.
strs에 들어있는 요소들의 첫글자가 모두 다른지 같은지 모르기 때문에, 일단 -1번을 넣어 주었다.

이후, 포문을 strs의 첫번째요소의 length만큼 돌려주며..

strs에 filter메소드를 사용해준다. i+1번째 글자가 같은 배열의 요소들로만 이루어진 배열이 반환되며 checkStr에 할당된다.

동시에 글자의 위치를 나타내는 sameCharindex에 1을 더해준다.

포문이 종료 된 이후, 구해진 sameCharindex를 이용해 string메서드인 substring 메서드를 이용한다.

.substring(0,3)의 경우 첫번째 두번째 세번째 글자까지 나오게 된다. 위쪽의 for문이 돌아가면서 마지막 if문이 실행되었을 때 sameCharindex은 여전히 + 되므로 그대로 사용하면 sameLetter을 구할 수 있다.

profile
항상 생각하는 개발자

0개의 댓글