그래프의 개념과 구조 - C 언어
·
C
그래프: 연결되어 있는 원소 사이의 다:다 관계를 표현하는 자료구조 ( 트리는 1:N 관계 표현 )그래프 G = 객체를 나타내는 정점(Vertex)과 객체를 연결하는 간선(Edge)의 집합. G = (V, E) 그래프의 종류무방향 그래프: ( = 양방향 그래프) 두 정점을 연결하는 간선에 방향이 없는 그래프, 정점 Vi와 정점 Vj를 연결하는 간선을 (Vi, Vj)로 표현ex) 위 그림의 왼쪽 그래프가 G1, 오른쪽 그래프가 G2일 때. V(G2) = (A, B, C, D). E(G2) = {(A, B), (B, C), (B, D), (C, D)} 방향 그래프: 간선에 방향이 있는 그래프, 정점 Vi에서 정점 Vj를 연결하는 간선 즉, Vi -> Vj를 로 표현. Vi를 꼬리(tail), Vj를 머리(h..
heap의 개념과 구조, 삽입/삭제 연산 - C언어
·
C
Heap: 완전 이진 트리에 있는 노드 중에서 키 값이 가장 큰 노드나키 값이 가장 작은 노드를 찾기 위해 만들어진 자료 구조 최대 히프 max heap: 키 값이 가장 큰 노드를 찾기 위한 완전 이진 트리, 부모 노드의 키 값 >= 자식 노드의 키 값, 루트 노드 : 키 값이 가장 큰 노드최소 히프 min heap: 키 값이 가장 작은 노드를 찾기 위한 완전 이진 트리, 부모 노드의 키 값 ❗️ 이진 트리에서는 왼쪽이 루트 노드보다 작고 오른쪽이 루트 노드보다 컸지만 히프는 좌우가 아닌 상하를 따짐. 히프의 구현1차원 배열의 순차구조를 이용하면 인덱스 관계를 이용하여 부모 노드를 찾을 수 있다. 위에서 아래로 내려오면서 동시에 왼쪽부터 차례대로 배열의 원소가 된다. ( 인덱스 0은 사용하지 않는다 )..
이진 탐색 트리의 탐색/삽입/삭제 연산 - C언어
·
C
https://tildacoderecorder.tistory.com/104이진 트리에 대한 개념 설명은 아래 글 참조 👇🏻 [ 자료구조 ] 트리와 이진트리의 개념과 구조 - C언어트리 : 원소들 간에 1:n 관계를 가지는 비선형 자료구조, 원소들 간에 계층 관계를 가지는 계층형 자료구조, 상위 원소에서 하위 원소로 내려가면서 확장되는 트리(나무) 모양의 구조 트리는 하나tildacoderecorder.tistory.com 이진 탐색 트리 Binary search Tree: 이진 트리를 탐색용 자료구조로 사용하기 위해 원소 크기에 따라 노드 위치를 정한 것모든 원소는 서로 다른 유일한 키를 갖는다.왼쪽 서브 트리에 있는 원소들의 키는 그 루트의 키보다 작다.오른쪽 서브 트리에 있는 원소들의 키는 그 루..
트리와 이진트리의 개념과 구조 - C언어
·
C
트리 Tree트리 : 원소들 간에 1:n 관계를 가지는 비선형 자료구조, 원소들 간에 계층 관계를 가지는 계층형 자료구조, 상위 원소에서 하위 원소로 내려가면서 확장되는 트리(나무) 모양의 구조트리는 하나의 루트 노드를 가지며 각 자식 노드와 부모 노드는 간선(edge)로 연결되어 있다. 트리의 이해차수노드의 차수 : 노드에 연결된 자식 노드의 수. ex ) 위 노드를 예로 들어 F의 차수는 2, G의 차수는 1, H의 차수는 0트리의 차수 : 트리에 있는 노드의 차수 중 가장 큰 값  ex ) 위 트리의 차수는 2단말 노드 : 차수가 0인 노드. 자식 노드가 없는 노드.  ex ) 위 노드에서는 A, C, E, H가 해당 높이노드의 높이 : 루트에서 노드에 이르는 간선의 수. 노드의 레벨  ex ) B..
연결리스트를 이용한 큐의 구현 | 연결큐 - C 언어
·
C
연결 큐1차원 배열을 이용하기 때문에 크기가 정해져 있는 원형 큐의 문제점을 보완해 나온 것이 연결 리스트를 이용한 연결 큐.원형 큐에 대한 설명은 아래 글로 👇🏻https://tildacoderecorder.tistory.com/102 [ 자료구조 ] enQueue()와 deQueue() 함수를 이용한 원형큐큐의 개념과 구조 큐 : 스택과 다르게 "선입선출"의 구조를 가지고 있다. 먼저 들어간 것이 먼저 나오는 구조. FIFO = First In First Out 순차큐의 문제점을 보완해 나온 것이 원형큐 = 1차원 배열을 사tildacoderecorder.tistory.com 큐의 원소는 연결 리스트의 노드이고, 각 노드를 포인터로 연결한다. front = 첫 번째 노드를 가리키는 포인터 변수 (..
enQueue( )와 deQueue( ) 함수를 이용한 원형큐 - C 언어
·
C
스택에 대한 설명 👇🏻https://tildacoderecorder.tistory.com/101 [자료구조] push( ) 와 pop( ) 함수를 이용한 스택스택의 개념과 구조 : 스택은 마지막에 삽입한 원소는 맨 위에 쌓여 있다가 가장 먼저 삭제 됨 / 후입선출 구조 ( LIFO, Last-In-First-Out ) 스택에서의 삽입 연산 : push 스택에서의 삭제 연산 : pop 기본tildacoderecorder.tistory.com큐의 개념과 구조큐 : 스택과 다르게 "선입선출"의 구조를 가지고 있다. 먼저 들어간 것이 먼저 나오는 구조. FIFO = First In First Out순차큐의 문제점을 보완해 나온 것이 원형큐 = 1차원 배열을 사용하면서 논리적으로 처음과 끝이 원처럼 연결되어 ..