[자료구조] 큐(Queue)
·
컴퓨터 과학/자료구조
자료구조 큐(Queue)에 대해 알아보겠습니다. 큐는 프로그램에서 자주 사용되는 자료구조 중 하나로, 다양한 분야에서 효율적으로 데이터를 처리하는 데 유용합니다. 큐란?큐(Queue)는 선입선출(FIFO, First In First Out) 방식을 따르는 자료구조입니다. 즉, 먼저 들어온 데이터가 먼저 처리됩니다. 마치 줄 서기와 같은 개념으로, 줄의 앞쪽부터 순서대로 처리되는 구조를 떠올리시면 됩니다. 큐의 특징FIFO(First In, First Out):먼저 삽입된 데이터가 먼저 삭제됩니다.예: 대기열, 프린터 작업, 고객 서비스 센터의 대기 시스템 등.두 가지 주요 연산:Enqueue: 큐의 끝에 데이터를 추가.Dequeue: 큐의 앞에서 데이터를 제거.방향성:한쪽 끝에서만 데이터가 추가되고, 반..
[자료구조] 힙(Heap)
·
컴퓨터 과학/자료구조
힙(Heap)은 완전 이진 트리(Complete Binary Tree) 형태를 가지는 자료구조로, 각 노드의 값이 특정한 조건을 만족하도록 정렬된 트리입니다. 힙은 주로 우선순위 큐(Priority Queue)를 구현할 때 사용되며, 그 특성 때문에 빠른 삽입과 삭제 연산이 가능합니다.힙의 특성힙은 다음 두 가지 특성을 가집니다.완전 이진 트리(Complete Binary Tree):트리가 완전히 채워져 있으며, 마지막 레벨을 제외한 모든 레벨이 꽉 차 있습니다.마지막 레벨에서는 노드들이 왼쪽부터 오른쪽으로 채워져 있습니다.힙 특성(Heap Property):최대 힙(Max Heap): 부모 노드의 값이 자식 노드의 값보다 크거나 같아야 합니다. 즉, 트리의 루트(root) 노드는 항상 최대값입니다.최소..
[자료구조] 스택(Stack)
·
컴퓨터 과학/자료구조
스택(stack) : 후입선출(LIFO:Last-In First-Out)의 방식(가장 최근에 들어온 데이터가 가장 먼저 나간다)을 이용한다. 스택에서 입출력이 이루어지는 부분을 스택 상단(stack top)이라 하고, 반대쪽인 바닥부분을 스택 하단(stack bottom)이라고 한다. 스택에 저장되는 것을 요소(element) 또는 항목이라고 한다. 스택에 요소가 하나도 없는 경우를 공백(empty) 상태라 하고 꽉 차서 더 이상 요소를 넣을 수 없는 상태를 포화(full) 상태라 한다.배열을 이용한 스택의 구현1차원 배열 stack[ ]스택의 크기 : 배열의 크기스택에 저장된 원소의 순서 : 배열 원소의 인덱스인덱스 0번 : 스택의 첫번째 원소인덱스 n-1번 : 스택의 n번째 원소변수 top: 가장 최..
김치바보
'컴퓨터 과학/자료구조' 카테고리의 글 목록