Deque란? 스택(Stack) 자료구조의 하나로서 후입선출(Last In First Out)를 의미한다. 자바에서는 Stack을 class 형태로 지원해주고 있다 큐(Queue) Queue의 경우는 선입선출(First In First Out)를 의미한다. 자바에서 Queue는 인터페이스로 구현이 되어 있어 보통 LinkedList를 사용해서 구현하곤 한다. 덱, 데크(Deque) 자바 1.6부터 지원하게 된 Deque는 Queue 인터페이스를 확장하여 만든 인터페이스이다. 덱은 Double-Ended Queue의 줄임말로 큐의 양쪽에서 데이터를 넣고 뺄 수 있는 자료구조이다. 하나의 자료구조에 Queue와 Stack을 합쳐놓은 형태라고 생각하면 된다. 인덱스를 통해 검색, 추가, 삭제가 불가능하다. D..
문제링크 📝 문제 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 쌓여서 FIFO - First In First Out - 에 따라 인쇄가 되게 된다. 하지만 상근이는 새로운 프린터기 내부 소프트웨어를 개발하였는데, 이 프린터기는 다음과 같은 조건에 따라 인쇄를 하게 된다. 현재 Queue의 가장 앞에 있는 문서의 ‘중요도’를 확인한다. 나머지 문서들 중 현재 문서보다 중요도가 높은 문서가 하나라도 있다면, 이 문서를 인쇄하지 않고 Queue의 가장 뒤에 재배치 한다. 그렇지 않다면 바로 인쇄를 한다. 예를 들어 Queue에 4개의 문서(A B C D)가 있고, ..
문제링크 📝 문제 신종 바이러스인 웜 바이러스는 네트워크를 통해 전파된다. 한 컴퓨터가 웜 바이러스에 걸리면 그 컴퓨터와 네트워크 상에서 연결되어 있는 모든 컴퓨터는 웜 바이러스에 걸리게 된다. 예를 들어 7대의 컴퓨터가 과 같이 네트워크 상에서 연결되어 있다고 하자. 1번 컴퓨터가 웜 바이러스에 걸리면 웜 바이러스는 2번과 5번 컴퓨터를 거쳐 3번과 6번 컴퓨터까지 전파되어 2, 3, 5, 6 네 대의 컴퓨터는 웜 바이러스에 걸리게 된다. 하지만 4번과 7번 컴퓨터는 1번 컴퓨터와 네트워크상에서 연결되어 있지 않기 때문에 영향을 받지 않는다. 어느 날 1번 컴퓨터가 웜 바이러스에 걸렸다. 컴퓨터의 수와 네트워크 상에서 서로 연결되어 있는 정보가 주어질 때, 1번 컴퓨터를 통해 웜 바이러스에 걸리게 되는..
Queue란? Queue란 Collection 프레임워크의 일부이며 java.util 패키지에 소속 Queue는 사전적으로 "줄을 서다"를 의미 줄을 서서 기다린다는 것처럼 먼저 들어오면 데이터가 먼저 나가는 형식 일명 FIFO(FirstInFirstOut) 방식(선입선출) 반대로 Stack은 LIFO방식이라 두 개가 많이 비교됨(후입선출) Queue 선언과 사용 선언 Queue queue = new LinkedList(); 삽입 Queue queue = new LinkedList(); queue.add(1); queue.add(2); queue.offer(3); add(e) : 삽입 성공 시 true 반환, 하지만 사용 가능한 공간이 없어 삽입 실패 시 IllegalStateException 발생 of..
keyword : difficulty : 실버5 completion : ✅ notice : 요세푸스 문제 0 📝 문제 요세푸스 문제는 다음과 같다. 1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열은 이다. N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,00..
- Total
- Today
- Yesterday
- 리액트
- SQLD
- 백준
- 해시맵
- 정렬
- SQL
- JavaScript
- JPA
- Spring
- 자바
- Queue
- 이분탐색
- Algorithm
- 자바bfs
- dfs
- 형변환
- CS
- 알고리즘
- Comparator
- DP
- 스프링
- 자바스크립트
- BFS
- Nest
- 스프링부트
- 프로그래머스
- 자바dp
- 자바트리
- 타입스크립트
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |