URL : https://programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 문제를 정리해 보자 인쇄 대기목록의 가장 앞에있는 문서를 대기목록에 꺼낸다(i라고 가정하겠다) 나머지 인쇄 대기목록에서 i보다 중요도가 높은 문서를 하나라도 존재하면, i를 대기목록 마지막으로 넣는다 없는경우에는 i를 인쇄한다. 예를 들어 문제에 제시된 4개의 문서 ABCD 대해 중요도가 [2,1,3,2]라고 한다면 아래와 같은 순서로 출력이된다 1) 2..
큐
URL : https://level.goorm.io/exam/43246/%ED%81%90-queue/quiz/1 구름LEVEL 코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이 level.goorm.io 문제 조건들을 정리해보자 큐는 최대 10개의 자료가 들어갈 수 있고, 10개를 넘으면 overflow를 출력한다 큐가 비어있는 상태에서 Deque를 실행하면 underflow, 꽉 차있는 상태에서 Enque를 실행하면 overflow를 실행한다 프로그래밍 언어에서 제공하는 라이브러리를 사용하지 않고 문제 푸는것을 권장한다. 입력 조건들을..
Queue란? 큐는 스택과 동일하게 데이터를 임시 보관하는 자료구조이다. 다만 스택과 달리 선입선출(FIFO, First In Frist Out)구조를 가지고 있다. 큐에서 가지는 기본적인 작업은 아래 두개가 있습니다 인큐(Enqueue) : 데이터를 추가하는 작업 디큐(Dequeue) : 데이터를 빼내는 작업 그리고 스택의 구조에 쓰이는 용어도 두가지가 있습니다. 프런트(Front) : 데이터를 꺼내는 쪽 리어(Rear) : 데이터를 빼내는 쪽 Ring Buffer로 원형 큐 구현하기 일반적으로 배열형태로 큐를 구현하게 되면, 만약 디큐를 하게 되면 그 뒤 원소들을 모두 앞쪽으로 땡겨주어야합니다. 이 작업에서는 시간복잡도 O(n)이 추가적으로 들어가게 됩니다.디큐의 시간복잡도가 O(1)인데 이 작업으로..