Bruteforce는 컴퓨터의 빠른 계산 능력을 이용해 가능한 경우의 수를 일일이 나열하면서 답을 찾는 방법이다.Bruteforce는 기저사례(Base case)를 포함한 재귀함수(Recursive function)를 이용한다.모든 재귀함수는 ‘더 이상 쪼개지지 않는’
Greedy 알고리즘은 현재 주어진 상황에서 가장 이득이 되는 최선의 경우를 선택하는 알고리즘을 의미한다.Greedy 알고리즘은 지금의 선택이 앞으로 남은 선택들에 대해 어떤 영향을 끼칠지 고려하지 않는다.Greedy 알고리즘은 최적해를 구하는 알고리즘이 아니다.단,
링크: https://algospot.com/judge/problem/read/DICTIONARY종만북 DFS 파트의 난도 '하'로 제시된 문제이나 아직 DFS와 위상정렬(topological sort)에 대해 익숙하지 않아서 상당히 어렵게 느껴진 문제였다.
https://algospot.com/judge/problem/read/WORDCHAIN두 가지 전략이 존재한다.각 단어(문자열)를 정점으로 하는 그래프를 만든다.끝말잇기가 성립하기 위해서는 모든 정점을 1회씩 탐방할 수 있어야 한다.각 단어(문자열)의 첫문자
분할정복은 다음과 같은 과정으로 이뤄진다.주어진 문제를 둘 이상의 부분 문제로 나눈다. (divide)재귀 호출을 이용해 각 부분 문제를 계산한다. (recursive & base case)각 부분 문제의 답으로부터 전체 문제의 답을 계산한다. (merge)분할정복의