목록2024/08/12 (2)
미누에요

그래프(Graph)정점(vertax)과 간선(edge)로 이루어진 자료구조이다. 방향성을 가지고 있느냐에 따라 방향 그래프와 무방향 그래프로 나누어진다. 위 그림에서 왼쪽이 무방향 그래프, 오른쪽이 방향 그래프를 나타낸다. 이러한 그래프는 보통 인접행렬, 인접 리스트의 두 가지로 표현한다. 인접 행렬각 정점(vertax)에 대해서 간선(edge)가 연결되어 있는 경우에 1을 작성하는 방법이다. 위 왼쪽 무방향 그래프의 인접 행렬은 아래와 같다. 해당 행과 열이 교차되는 곳에 1이 있다는 것은 두 정점이 간선으로 연결되어있다는 뜻이다.그리고 왼쪽 상단에서 오른쪽 하단으로 가는 축을 기준으로 대칭을 가지는 것을 확인할 수 있다.무방향 그래프는 방향성이 없기 때문에 1과 0이 관계가 있으면 0과 1도 ..

이진 탐색 트리(Binary Search Tree)한 노드를 기준으로 왼쪽 자식에 있는 트리는 해당 노드보다 작다한 노드를 기준으로 오른쪽 자식에 있는 트리는 해당 노드보다 크다 위 그림처럼, 모든 각 노드들에 대하여 왼쪽은 더 작은 값이, 오른쪽은 더 큰 값이 위치해야한다. 위와 같은 이진탐색트리를 코드로 구현해보겠다.구현할 기능은 아래와 같다.이진탐색트리에서 가장 작은 값이진탐색트리에서 가장 큰 값이진탐색트리에서 주어진 키 값 찾기이진탐색트리에서 새로운 키 삽입이진탐색트리에서 주어진 키 값 삭제 이진탐색트리에서 가장 작은 값해당 노드에서 왼쪽 트리가 더 작아야 하므로 왼쪽으로 쭉 내려가면 가장 작은 값이 나온다.int min_BST(Node *root) { Node *temp = root; ..