▶ 최솟값이나 최댓값을 빠르게 찾아내기 위해서 ( 완전 이진 트리를 기반)최대힙 : 부모노드 값 > 자식 노드최소힙 : 부모노드 값 < 자식노드▶ O(N \* log N) : 한 번 자식 노드로 내려갈 때마다 노드의 갯수가 2배씩 증가한다는 점 (ex 데이터의 갯
* 백준 * ▶1260번 - BFS와 DEFS ▶ 1012번 - 유기농 배추 1987번 - 알파벳 2178번 - 미로 탐색 2606번 - 바이러스 2667번 - 단지번호붙이기 4963번 - 섬의 개수 [7576번 - 토마토](htt
N은 노드, E는 간선일 때▶ 인접 리스트 : O(N+E)▶ 인접 행렬 : O(N²)그래프 : 정점(node)과 그 정점을 연결하는 간선(edge)으로 이루어진 자료구조의 일종탐색을 함에 있어서 깊이를 우선으로 하여 최대한 깊이 내려간 뒤, 더이상 깊이 갈 곳이 없을
임의의 크기를 가진 데이터를 고정된 데이터의 크기로 변환시키는 것을 의미한다.Hash는 데이터의 값을 이용해 저장하거나, 찾을 수 있다. python의 dictionary를 생각하면 이해하기 쉬우며, python은 dictionary로 hash를 제공한다. 기존의 자료
* 다이나믹 프로그래밍(DP)이란? * 큰 문제를 작은 문제로 쪼개어 작은 문제들을 해결, 저장 하여 큰 문제를 해결한다. 즉, * 한번 푼 문제는 다시 풀지 않음 * -> 메모이제이션(memoization) : 계산한 결과는 배열에 저장. * 다이나믹 프로그래밍(
* 다익스트라 란? * 다이나익 프로그래밍을 활용한 * 최단 경로 탐색 * 최단 경로 탐색 알고리즘