구현은 "아이디어를 코드로 바꾸는 것"
머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정이다. 구현은 "아이디어를 코드로 바꾸는 것"
머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정이다
- 알고리즘 문제의 해결 순서
문제 -> 생각 -> 해결
이 순으로 알고리즘을 구성한다.
문제 해결 분야의 구현유형은 "풀이를 떠올리는 것은 쉽지만 소스 코드로 옮기기 어려운 문제"를 의미한다.
즉, 구현 문제는 피지컬을 요구하는 문제라고도 한다.
- 구현 문제 중 어려운 문제 특징
1) 알고리즘은 간단한데 코드가 지나칠 만큼 길어지는 문제
2) 특정 소수점 자리까지 출력해야 하는 문제
3) 문자열이 입력으로 주어졌을 떄 한 문자 단위로 끊어서 리스트에 넣아야 하는 문제
4) (개인적인 생각으로) 문법을 모를 때 , 사소한 조건을 구현하지 못할 때, 경험이 부족할 때도 있는 거 같다
-> 대체로 사소한 조건 설정이 많은 문제일 수록 코드로 구현하기 까다롭다.
- '구현' 유형으로는 완전 탐색 과 시뮬레이션 유형이 대표적이다.
- 완전 탐색 : 모든 경우의 수를 주저 없이 다 계산하는 해결 방법
- 시뮬레이션 : 문제에 제시한 알고리즘을 한 단계씩 차례대로 직접 수행
구현 문제의 접근 방법
특징
사소한 입력 조건 등을 문제에서 명시해주며 문제의 길이가 꽤 긴 편이다.
문제의 길이를 보고 쫄지 말고,
고차원적인 사고력을 요구하는 문제는 나오지 않는 편이라 문법에 익숙하다면 오히려 쉽게 풀수 있다.
( 개인적인 의견 : 하지만 생각하는 것도 어려울수 있다.ㅋㅋ)
<출처> 이것이 코딩 테스트다 (지음 나동빈)
반응형
'알고리즘 공부' 카테고리의 다른 글
범위를 좁혀가는 탐색 (0) | 2021.04.01 |
---|---|
DFS(깊이 우선 탐색) 학습 전 인접행렬, 인접 리스트 (0) | 2021.03.31 |