
코딩테스트를 풀다보면 이런 시간제한을 마주하게 되고 가끔은 시간초과 마주하게 되고 가끔은 시간초과 RunTimeErro가 나기도 한다. 따라서 시간제한을 통과할 수 있는 알고리즘을 선택하여 문제를 푸는 것이 중요함. 시간복잡도 O(1) < O(log n) < O(n
DP는 중복 계산을 줄여 성능을 높이는 알고리즘 설계 기법이다.알고리즘 설계 기법 : 문제를 해결하는 전략알고리즘 기법 : 그 전략을 구현한 실제 방법복잡한 문제를 작은 하위 문제로 나누고, 그 결과를 저장해 두었다가 재활용하는 기법.문제를 작은 부분 문제들로 나누고그
두 수의 최대공약수(GCD)를 찾기 위한 알고리즘이다.큰 수(a)를 작은 수(b)로 나누면서 나머지를 구하고, 그 나머지가 0이 될때까지 작은수(a)와 그 나눈 나머지(b)를 다시 나눈다. 나눈 나머지가 0이 된다면 a가 GCD가 된다.💡 그러나 두 수의 순서에 영향
dfs란 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘이다.✔ stack 또는 재귀 사용✔ 경로 찾기, 백트래킹에서 자주 쓰임1에서 시작해서2로 깊게 들어감2에서 4로 더 깊게 들어감4는 더 깊게 갈 곳이 없으니 백트래킹다시 1에서 안 간 곳 → 33에서 5로 깊
bfs란 그래프에서 가까운 곳부터 넓게 탐색하는 알고리즘고리즘이다.✔ 큐(Queue) 사용 https://velog.io/@seha01130/DFSDepth-First-Search-깊이우선탐색✔ 최단 거리 찾기에서 자주 쓰임1을 큐에 enqueue \[1]1