대부분의 정렬 알고리즘은 ‘key value’를 비교하는 비교 연산과 자료의 위치를 바꾸는 이동 연산이 있음이동 횟수와 비교 횟수를 통해 효율성을 판단컴퓨터 메모리 내부에서 정렬하는 ‘내부 정렬 알고리즘’과 보조기억장치에서 정렬하는 ‘외부 정렬 알고리즘’이 존재내부 정

DFS & BFS 기초 문제
‘bfs와 dfs중 하나를 선택하여 -1의 값을 가진 타일에 도달하는 것’이 목표였던 문제 \- dfs는 하나의 노드의 자식들에 관한 모든 경우에 수를 다 탐색을 하기 때문에 좀 느릴 것 같아 bfs로 접근함dx,dy의 개념을 생각하지 못 했었음.그래프를 탐색하기

https://www.acmicpc.net/problem/1753다익스트라를 이용하여 최소거리를 구하는 문제. 문제에서 가중치가 양수라고 명시를 해주어서 다익스트라로 문제를 해결하는 것을 빠르게 파악이 가능했지만 계속 오류가 발생해서 많이 힘들었다. ㅠㅠ해당

https://velog.io/@kimdukbae/%EC%9D%B4%EB%B6%84-%ED%83%90%EC%83%89-%EC%9D%B4%EC%A7%84-%ED%83%90%EC%83%89-Binary-Search위의 사진 자료가 모든 것을 다 표현해주는 것 같다

전북대학교 리트머스 과제 ( 이경수 교수님 알고리즘 과제)해당 문제를 처음 봤을 때 딱 떠 오른 문제가 있다. 바로 이전에 bfs로 시작 점부터 끝점까지 탐색을 했었던 문제 ‘쩰리’ 문제였다. dfs로 탐색을 하면 해당 노드의 모든 경우의 수를 다 탐색을 하고 다른

다익스트라, 벨만-포드, 플로이드 와샬
기존 데이터를 원소의 개수가 동일한 부분 리스트로 분할하고 분할된 각 부분 리스트를 병합하면서 정렬하는 방식이는 정복 알고리즘(divide and conquer)에 해당알고리즘 절차하나의 리스트를 균등한 크기( 절반)로 반복해서 분할각 요소들이 한 개씩 남을 때 까지분

그래프 탐색 알고리즘 그래프의 가장 기본적인 연산 시작 정점부터 차례대로 모든 정점들을 한 번씩 방문 많은 문제들이 단순히 탐색만으로 해결됨 도로망 : 특정 도시에서 다른 도시로 갈 수 있는 지 여부 전자회로 : 특정 단자와

이전까지의 알고리즘들은 시간 복잡도가 O(n^2)을 가지기 때문에 실제로 사용하기가 어려운 알고리즘이다. 그렇기 때문에 매우 빠른 알고리즘이 필요하다. 그래서 우리는 실제로 가장 많이 사용되는 알고리즘인 Quick 정렬을 배워볼 것이다.대표적인 ‘분할 정복’ 알고리즘으

우리는 보통 두 가지의 방법으로 그래프를 표현한다.인접 배열인접 리스트우리는 위의 두 가지의 방법을 아주 간단하게 정리하고 코드로 구현을 해볼 것이다.장점2차원 배열에 모든 노드들의 간선 정보가 있기 때문에, 두 노드를 연결하는 간선을 조회할 때 O(1)의 시간 복잡도