%F0%9F%93%9A.png)
정렬정렬: 순서 없이 배열된 있는 자료들을 그 값에 따라 순서에 따라 재배열하는 것키(key): 자료를 정렬하는 데 사용하는 자료의 값\-정렬의 종류/ 정렬 순서(sort order)오름차순(ascending): 작은 값부터 시작하여 값이 증가흔 순서대로 배열하는 것내
%F0%9F%93%9A.png)
select_sort출처- https://visualgo.net/ko정렬되지 않은 전체 자료 중에서 해당 위치에 맞는 자료를 선택하여 위치를 교환하는 정렬 방식가장 작은 것을 선택해서 제일 앞으로 보낸다초록색이 순회하며 정렬되지 않은 부분들 중에서 최솟값을 찾
%F0%9F%93%9A.png)
bubble_sort출처-https://visualgo.net/ko정렬되지 않은 전체 자료들을 대상으로 인접한 두 개 자료의 키 값을 비교하여 위치를 교환하는 정렬 방식옆에 있는 값과 비교해서 더 작은 값을 앞으로 보낸다두 개의 초록색은 서로를 비교하며 작은
%F0%9F%93%9A.png)
insertion_sort출처- https://visualgo.net/ko기존에 정렬된 부분 집합에 정렬할 자료의 위치를 찾아 삽입하는 정렬 방식각 숫자를 적절한 위치에 삽입한다빨간색이 현재 키 정렬하려는 키 값이 된다. 앞에 있는 주황색들은 이미 정렬이 된
%F0%9F%93%9A.png)
merge_sort출처- https://imgur.com/같은 개수의 원소를 가지는 부분 집합으로 기존 자료를 분할(divide)하고 분할된 각 부분 집합을 병합(merge)하면서 정렬 작업을 완성(conquer)하는 분할 정복(divide and conque
%F0%9F%93%9A.png)
퀵 정렬 정의 quick_sort 출처- https://visualgo.net/ko 중심 값(피봇:Pivot)을 기준으로 두 자료의 키 값을 비교하여 위치를 교환하는 정렬 방식 분할 정복 기법(Divide and Conquer)의 사용 - 피봇의 위치 교환이 끝난 후
%F0%9F%93%8A.png)
그래프 그래프의 정의 정의: 그래프 G(V,E)는 어떤 자료나 개념을 표현하는 정점(vertex)들의 집합 V와 이들을 연결하는 간선(edge)들의 집합 E로 구성된 자료구조 그래프의 종류 표현하고자하는 대상에 따라 여러가지 변형된 형태가 있음 i) 정점이나 간선
%F0%9F%93%8A.png)
인접 행렬 구현 인접 리스트 구현
%F0%9F%93%8A.png)
그래프의 탐색 그래프 탐색: 하나의 정점으로부터 시작하여 차례대로 모든 정점들을 한 번씩 방문 -탐색 방법 깊이 우선 탐색(depth first search: DFS) 너비 우선 탐색(breath first search: BFS) 깊이 우선 탐색 순환 호출 이용
%F0%9F%93%8A.png)
깊이 우선 탐색(Depth - first search, DFS) dfs 더 따라갈 간선이 없을 경우 이전으로 돌아간다 재귀호출 사용 - 지금까지 거쳐온 정점들을 모두 저장 인접리스트로 표현된 그래프의 깊이 우선 탐색 dfs() : 아직 방문하지 않은 정점으로 이
%F0%9F%93%9A.png)
우선순위 큐 정의 데이터들이 우선순위를 가지고 있고 우선순위가 높은 데이터가 먼저 나가게 됨 부여되는 우선순위에 따라 스택이나 큐로 동작 가능 배열, 연결리스트, 히프로 구현 가능 우선순위 큐의 종류 최소 우선순위 큐: 가장 우선순위가 낮은 요소를 먼저 삭제 최