본문 바로가기

queue3

[C++/자료구조] 우선순위 큐(Priority Queue) 우선순위 큐 ? C++의 표준 라이브러리(Library)에서 제공되는 priority_queue 는 우선순위 큐 자료구조를 구현한 클래스 입니다. 우선순위 큐는 데이터를 삽입과 동시에 자동으로 정렬이되고 정해진 기준에서 가장 높은 우선순위를 가진 요소가 항상 상단에 위치하도록 유지 합니다. priority_queue 를 사용하기 위해서는 헤더 파일의 선언이 필요합니다. 1. 우선순위 큐의 기본 동작 및 특성 1. 정렬 순서는 기본 내림 차순으로 가장 큰 값이 상단에 위치합니다. 2. 요소의 삽입, 삭제가 이루어 질때마다 자동으로 정렬을 실행합니다. 3. 힙(heap) 자료구조를 기반으로 구현되어 효율적으로 작동합니다. *힙(heap) 자료구조 복습하기(아래 접은글) 더보기 힙(heap) 힙은 특정한 규칙.. 2023. 8. 9.
[C++/자료구조] 큐(Queue) Queue : 큐 - 특징 1) 선입선출(FIFO) 구조를 가지는 자료구조 2) 삽입은 enqueue, 삭제는 dequeue 연산을 사용 - 장점 1) 구현이 간단하다 2) 작업 처리 대기열, 메세지 전달 등에서 유용하다 - 단점 1) 큐의 크기가 고정되어 있을 때, 큐가 가득 차면 더 이상 데이터를 추가할 수 없다 Queue.h #pragma once void DoQueue(); class Queue { public: Queue(); bool Empty(); bool Full(); int GetSize(); void Enqueue(DataType data); void Dequeue(); DataType GetFront(); private: int Front; int Rear; int Size; Data.. 2023. 7. 8.
[백준/C++] 10845 큐 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 이번 문제는 자료구조인 queue 에 대한 문제 입니다. 큐의 연산을 그대로 사용하는 문제 이며 string 자료형으로 명령어를 입력 받도록 합니다. 우선 queue를 사용하기위하여 #include 를 헤더에 추가합니다. 큐가 가지고 있는 연산자를 사용해야 합니다. 큐의 연산 pop() : 큐에서 제일 앞의 원소를 제거 합니다. front() : 큐의 제일 앞쪽 원소를 반환 합니다. push() : 큐의 제일 끝쪽에 원소를 추가 합니다. empty.. 2023. 5. 3.