priority queue Queue 자료구조는 먼저 집어 넣은 데이터가 먼저 나오는 선입선출(FIFO) 구조로 저장하는 형식이다. 이와 다르게 우선순위큐(priority queue)는 들어간 순서에 상관없이 우선순위가 높은 데이터가 먼저 나온다. Queue의 operation 시간복잡도는 enquque O(1), dequeueO(1)이고, priority queue는 pushO(logn), popO(logn)으로, 이는 이진완전트리를 활용한 Heap 자료구조의 push와 pop과 동일하다. Heap Heap은 완전이진트리 구조이며, 우선순위큐의 구현과 일치한다. 이러한 Heap이 되기 위한 조건은 아래와 같다. Max Heap root node에 저장된 값이 가장 큰 값이며, 각 node에 저장된 값은..
문제 백준 1966 - 프린터 큐 코드 test_case = int(input()) for _ in range(test_case): n, m = list(map(int, input().split(' '))) queue = list(map(int, input().split(' '))) queue = [(i, idx) for idx, i in enumerate(queue)] count = 0 while True: if queue[0][0] == max(queue, key=lambda x: x[0])[0]: count += 1 if queue[0][1] == m: print(count) break else: queue.pop(0) else: queue.append(queue.pop..
- Total
- Today
- Yesterday
- leetcode
- 코테
- webflux
- MySQL
- 스프링부트
- 북클럽
- mysql 8.0
- 구현
- Spring
- 백준
- 노마드
- spring boot
- 파이썬
- Real MySQL
- 릿코드
- 스프링 부트
- 노마드코더
- 정렬
- 그리디
- 리팩토링
- 인프런
- 김영한
- kotlin
- 스프링
- 데이터베이스
- 문자열
- 자료구조
- 알고리즘
- Algorithm
- 코틀린
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |