한 번 계산한 문제는 다시 계산하지 않도록 하는 알고리즘다이나믹 프로그래밍은 큰 문제를 작게 나누고, 같은 문제라면 한 번씩만 풀어 문제를 효율적으로 해결하는 알고리즘 기법이다.분할 정복 방식과 비슷한데, 차이점은 다이나믹 프포그래밍에서는 작은 문제들이 반복되지만 분할
다익스트라 알고리즘그래프에서 여러 개의 노드가 있을 때, 특정한 한 정점(=노드)에서 출발하여 다른 모든 정점으로 가는 최단 경로를 구하는 알고리즘출발 노드를 설정최단 거리 테이블 초기화방문하지 않은 노드 중에서 최단 거리(가중치)가 가장 짧은 노드 선택해당 노드를 거
탐색 알고리즘 : DFS & BFS DFS & BFS는 많은 양의 데이터 중 원하는 데이터를 찾는 탐색에 적합한 알고리즘이다.
벨만 포드 알고리즘(Bellman-Ford Algorithm)다익스트라 알고리즘처럼 그래프에서 한 정점에서 다른 모든 정점으로 가는 최단 경로를 구할 수 있는 알고리즘이다.벨만 포드 알고리즘은 다익스트라 알고리즘보다 시간이 더 걸리지만 음의 간선이 존재해도 최단 경로를
플로이드워셜 알고리즘 (Floyd-Warshall Algorithm)모든 정점에 대한 최단 경로를 구하는 방법 최단 경로를 구하는 문제는 크게 4개의 유형이 있다하나의 정점에서 다른 하나의 정점까지의 최단 경로를 구하는 문제하나의 정점에서 다른 모든 정점까지의 최단 경
Greedy Alogrithm최적의 해에 가까운 값을 구하기 위해 사용되는 알고리즘으로 여러 경우 중 하나를 결정해야할 때마다, 매 순간 최적이라고 생각되는 경우를 선택하는 방식으로 진행하여 최종적인 값을 구하는 방식을 말함대표적인 알고리즘으로는 " 거스름돈" 문제가
BackTracking "가능한 모든 방법을 탐색한다"의 아이디어를 가진다. 즉, 백트래킹은 현재 상태에서 가능한 모든 후보군을 따라 들어가며 해결책에 대한 후보를 구축해 나아가다 가능성이 없다가 판단되면 즉시 후보를 포기하면서 정답을 찾아가는 범용적인 알고리즘이다.