본문 바로가기

ALGORITHM/개념2

[Algorithm] 구현 - 완전 탐색(Brute Force), 백트래킹 구현이란 구현: 머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정 완전 탐색: 모든 경우의 수를 탐색하며 다 계산하는 해결 방법 시뮬레이션: 문제에서 제시한 알고리즘을 한 단계씩 차례대로 직접 수행 구현 문제 접근법 사소한 입력 조건 등을 문제에서 명시 문제 길이가 긴 편 완전 탐색 완전 탐색 문제의 조건 경우마다 따질 게 명확 특정 상태를 구성하고, 그 상태가 특정 조건을 만족하는지 검토해야 경우의 수가 모두 탐색할 수 있을 만큼 적음 시간복잡도를 생각하지 않으면 완전탐색으로 모든 문제를 풀 수 있으므로, 처음에 완전탐색 풀이를 생각한 후 차츰 최적화하는 방식도 꽤 많은 문제에서 유용함 모든 경우를 탐색하는 풀이를 생각해 봤는데 N(입력)제한이 매우 작다면 완전 탐색을 의심 완전 탐색 문제를 푸는 법 모.. 2022. 11. 13.
[Algorithm] 그리디(greedy, 탐욕법) 그리디 알고리즘 그리디: 탐욕법. 어떤 문제가 있을 때 ‘현재 상황에서 지금 당장 좋은 것만 고르는 방법’으로 문제 푸는 것. 현재의 선택이 나중에 미칠 영향은 고려 X 현재 상황에서 가장 좋아 보이는 것만을 선택해도 풀 수 있는 문제 보통 정렬 기준 제시해줌: 큰 순서대로, 작은 순서대로 등 그리디 알고리즘의 정당성 풀이를 위한 아이디어 떠올리고 이것이 정당한지 검토할 수 있어야 부분 문제로 나눠서 구한 답이 전체 문제의 일부 부분적인 최적 전략을 반복적으로 하면 답이 나오는 문제 참고 이것이 취업을 위한 코딩테스트다 2022. 11. 13.