우선순위 큐(Priority queue)
- 큐와 유사하지만 우선순위가 높은 아이템이 먼저 처리됨
- 주요 동작 : insert, delete, peek
힙(Heap)
- 주로 이진 트리 기반으로 구현
-- 트리(tree) : 부모-자녀처럼 계층적인 형태를 가지는 구조
-- 이진 트리(binary tree) : 자녀가 최대 두 개인 트리
- max heap : 부모 노드의 키가 자식 노드(들)의 키보다 크거나 같은 트리
- min heap : 부모 노드의 키가 자식 노드(들)의 키보다 작거나 같은 트리
- 주요 동작 : insert, delete, peek
Priority queue와 Heap의 관계
힙의 키를 우선순위로 사용한다면 힙은 우선순위 큐의 구현체가 된다.
Priority queue = ADT(Abstract Data Type) => 개념O, 구현X
Heap = data structure => 구현까지 O
Priority queue에는 여러 구현체들이 있을 수 있지만 Heap이 가장 성능이 좋아 많이 사용된다. 그러나 둘은 다른 개념이다.
Priority queue와 Heap의 사용
- 프로세스 스케줄링
- heap sort(힙 정렬)
'공부 기록 > 영상 후기' 카테고리의 다른 글
인터럽트와 시스템 콜을 설명합니다! 당연히 유저 모드, 커널 모드도 설명해야겠죠? 그런데 이 모든게 프로그래밍 언어와 무슨 상관이냐구요?? 상관있죠! 왜 상관있냐면요..! (0) | 2023.04.05 |
---|---|
스택과 큐 설명! 참 쉽죠~~? 기술 문서 읽다가 큐 만났을 때 팁과 스택/큐와 관련된 에러들 그리고 해결책도 설명드려요!! (0) | 2023.04.04 |
변수와 객체와 메모리의 관계! 자바를 예로 들어 변수와 객체는 메모리에 어떻게 저장되는지 정말 쉽게 설명해요! (0) | 2023.04.04 |
CPU 스케줄러는 프로세스를 어떻게 스케줄링 하는 걸까요? 선점/비선점의 차이는 뭘까요? 디스패처는 또 뭐죠? (0) | 2023.04.04 |
[10분 테코톡] 수달의 JPA N+1 문제 (0) | 2023.04.02 |