본문 바로가기
  • soldonii's devlog
Javascript 공부/TIL

191118(월) : 코딩 인터뷰 완전 분석(1)

by soldonii 2019. 11. 18.

# Chapter 8. 기술적 문제의 p.96

 

나중에 면접에서 나의 단점이 무엇인지 물을 때 대답할 수 있는 질문 중 하나이자, 실제로 내가 알고리즘 문제를 풀 때 고쳐야 하는 부분이다.

3. 무식한 방법으로 일단 해보기

예제가 완성됐다면, 무식한 방법(brute force)으로 먼저 시돼보라(문제에 따라 2단계(예제를 직접 그려보기)와 3단계의 순서를 바꿔도 된다.) 이 단계에서 만든 알고리즘이 최적일거라 기대하지도 않고 최적이 아니어도 괜찮다.

어떤 지원자들은 무식한 방법이 너무 명백하고 비효율적이라 언급조차 하지 않으려고 한다. 하지만 여러분이 생각하기에 너무 뻔해 보이더라도 누군가에게는 뻔하지 않을 수도 있다. 면접관은 여러분이 너무 쉬운 문제를 낑낑대고 있다고 생각할 수도 있다. 그렇게 생각하는 것을 원치 않을 것이다.

첫 알고리즘이 형편없어도 괜찮다. 알고리즘의 시간 및 공간 복잡도를 설명한 뒤 알고리즘을 개선해 나가면 된다.

무식한 방법 알고리즘은 느릴 순 있어도 토론할 가치가 있다. 왜냐하면 알고리즘 최적화의 시작점이 바로 무식한 방법이고, 이 과정이 문제에 집중하도록 도움을 주기 때문이다.

 

댓글