강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

할루님의 프로필 이미지
할루

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

4. 문자거리

4번 풀이 한번 봐주시면 감사하겠습니다

작성

·

219

0

function solution(str, t) {
  let answer = "";
  for (let i in str) {
    let min = 1000;
    for (let j in str) {
      if (str[j] === t) {
        let dist = Math.abs(i - j);
        min = min > dist ? dist : min;
      }
    }
    answer += `${min} `;
  }

  return answer;
}
console.log(solution("teachermode", "e"));
 
이렇게 풀어봤는데 괜찮을까요??? (시간 복잡도는 더 안좋은거죠?)
 
그리고 혹시 문자 t가 해당 문자열에 아예 존재하지 않는 경우에 대한 예외처리는 할 필요없을까요?
 

퀴즈

문자열이 회문(Palindrome)인지 확인할 때, 내장 함수를 사용하는 방법으로 강의에서 언급된 주된 방식은 무엇일까요?

`split`, `sort`, `join`

`substring`, `reverse`, `concat`

`split`, `reverse`, `join`

`slice`, `sort`, `merge`

답변 1

1

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

일단 2중 for문을 사용한 것은 조금 아쉽습니다. 

t 문자는 항상 존재한다고 생각하시면 됩니다.

할루님의 프로필 이미지
할루

작성한 질문수

질문하기