코드카타 5

이재현·2021년 6월 25일
0

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

비교를 위해 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개의 댓글