-
[JS 알고리즘&자료구조] 문제의 이해JavaScript/Basic 2023. 10. 30. 23:23
개발자들에게 가장 중요한 것은 '문제 해결'이다. 문제 해결을 위해서는 단계별 지침을 통해 계획을 수립해야 할 필요가 있다. 계획을 수립한다고 해서 문제가 해결되는 것은 아니지만 계획을 수립하는 과정을 거치면서 자연스럽게 해결책이 나올 수 있다.
우선 첫 번째로 문제를 이해하는 단계부터 살펴보자. 우선 문제를 마주하게 되면 이해를 하는 게 제일 우선이다. 사람들은 문제가 나오면 빠르게 진행해야 한다는 생각 때문에 급하게 풀려는 경향을 가진다. (특히 프로그래밍에서 더욱 더🤣) 제대로 이해하지 않아도 진행이 되는 것도 맞다. 그러나 시작하기 전에 문제를 확실히 이해하는 것은 정말 중요하다.
이해를 위해 스스로 혹은 면접관에게 던져볼만한 질문들은 아래와 같다.
- 문제를 나만의 방식 혹은 나만의 언어로 제대로 이해했는가? (남에게 설명할 수 있을 정도로 이해해야 한다고 생각함)
- 문제가 어떤 입력값을 가지고 있는가?
- 문제에서 어떤 출력값이 나와야 하는가?
- 입력값이 출력값을 결정할 수 있는가?
- 문제에 등장하는 중요한 데이터를 뭐라고 명명할 것인가? 뭐라고 부를 것인가?
아래의 간단한 예제에 질문들을 적용시켜 보자.
두 개의 숫자를 가지고 합계를 반환하는 함수를 작성해 보세요
- 두 개의 숫자를 더한 후 반환하는 함수를 만들어라.
- 정수, 부동 소수점 등 어떤 숫자가 입력이 되어야 하는지 명확한 명제가 없기에 질문이 필요하다.
- 입력값이 불명확하기에 출력값도 불명확함. 출제자에게 질문이 필요.
- 숫자 하나를 입력 안 하면 어떻게 해야할까? 불명확함.
- add, num1, num2, sum
'JavaScript > Basic' 카테고리의 다른 글
[JS 알고리즘&자료구조] 세부 분석 (1) 2023.10.31 [JS 알고리즘&자료구조] 구체적 예제들 (0) 2023.10.30 [JS 알고리즘&자료구조] 문제 해결법 소개 (0) 2023.10.30 [JS 알고리즘&자료구조] Big O 배열 메소드 (0) 2023.10.30 [JS 알고리즘&자료구조] 배열 안의 데이터에 접근이 느린 이유 (0) 2023.10.30