큐(Queue)란? 삽입과 제거가 한쪽 끝에서만 이루어지는 특수한 선형 리스트. 선입 선출(Fast-In-First-Out) 구조이다. 즉, 가장 먼저(옛날에) 들어온 데이터가 가장 먼저 나간다. 큐는 줄이라는 뜻이다. 줄을 섰다고 생각해보자. 맨 처음와서 기다린 사람이 제일 먼저 원하는 것을 받을 수 있는 것처럼 큐도 맨 처음 들어온 원소가 가장 먼저 나간다. 큐의 주요 연산 - enqueue() / push(): 큐에 원소 삽입 - dequeue() / pop(): 큐에서 원소 제거 (후 그 값을 반환) - front()/peek(): 제일 처음에 있는 원소 반환 - isEmpty(): 큐가 비었는지 확인 - isFull(): 큐가 가득 찼는지 확인 - size(): 큐의 원소 개수 반환 C++에서 ..
문제 링크: www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 코드 설명은 주석 처리함. #include #include using namespace std; int main() { int n; queue q; scanf("%d", &n); // 1~n번 카드를 큐에 넣어준다 for (int i = 1; i 1) { // 제일 위에 있는 카드..
문제 링크: www.acmicpc.net/problem/1966 1966번: 프린터 큐 첫 줄에 test case의 수가 주어진다. 각 test case에 대해서 문서의 수 N(100이하)와 몇 번째로 인쇄되었는지 궁금한 문서가 현재 Queue의 어떤 위치에 있는지를 알려주는 M(0이상 N미만)이 주어진다. 다음 www.acmicpc.net 큐와 우선순위 큐를 활용해 해결하는 문제다. 입력받을 때 큐에 {문서의 순서, 중요도}를 pair를 활용해 저장했고, 우선순위큐에 중요도를 넣어주었다. 이후 큐에 있는 모든 문서가 처리될 때까지 while문으로 반복한다. 맨 앞에 있는 문서를 꺼낸 다음(q.pop()) 해당 문서의 중요도가 남아있는 모든 문서 중 가장 높은 중요도와 일치하면(현재 문서의 중요도가 가장..
- Total
- Today
- Yesterday
- 동적계획법
- React
- dash-plotly
- 카카오추천팀
- 자료구조
- 머신러닝
- Dash
- 백준
- reactjs
- 코테후기
- 다이나믹프로그래밍
- 회고
- sql
- MySQL
- c++
- 알고리즘
- JS
- 자바스크립트
- 컴퓨터과학
- 컴퓨터공학
- 스택
- 프로그래머스
- 후위표기식
- 우선순위큐
- dfs
- 큐
- 리액트
- 개발
- plotly
- 코드포매터
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |