본문 바로가기

deque3

[Python][Java] 백준 1021번. 회전하는 큐 https://www.acmicpc.net/problem/1021 1021번: 회전하는 큐 첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가 www.acmicpc.net 문제 설명: N개의 원소를 포함하고 있는 양방향 순환 큐를 가지고 있다. 첫번째 원소를 뽑았을 때 찾는 숫자가 맞으면 pop을 하고 첫번째 원소와 뽑을 숫자가 맞지 않다면 왼쪽으로 이동시키거나 오른쪽으로 이동시킬 수 있다. 이때 원소들을 찾을 때까지 몇 번의 이동이 있었는지 확인하는 문제이다. 풀이 설계: 양방향 큐이기 때문에 deque로 이 문제를 푼다. dq의 첫번째 원소의 값과 찾는 숫자.. 2023. 11. 20.
[LeetCode] Design Circular Queue(원형 큐 디자인) https://leetcode.com/problems/design-circular-queue/description/ Design Circular Queue - LeetCode Can you solve this real interview question? Design Circular Queue - Design your implementation of the circular queue. The circular queue is a linear data structure in which the operations are performed based on FIFO (First In First Out) principle, and the leetcode.com int Front() : 맨 앞 항목을 가져옵니다. 대기.. 2023. 10. 19.
[Python]Deque Deque * 앞과 뒤에서 데이터를 처리할 수 있는 양방향 자료형 * stack(스택)처럼 써도 되고 queue(큐)처럼 써도 된다. * from colections import deque 추가해서 사용하면 된다. Deque 시간복잡도에 관해 Python 리스트와 Deque의 차이 * List 시간 복잡도 Average Case Amortized Worst Case Copy O(n) O(n) Append[1] O(1) O(1) Pop last O(1) O(1) Pop intermediate[2] O(n) O(n) Insert O(n) O(n) Get Item O(1) O(1) Set Item O(1) O(1) Delete Item O(n) O(n) Iteration O(n) O(n) Get Slice O.. 2023. 10. 19.