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