Queue 3

[코테 - py] 두 큐 합 같게 만들기

https://school.programmers.co.kr/learn/courses/30/lessons/118667?language=python3 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr이번에는 큐를 이용한 문제였다.여기서 시간복잡도를 고려하여 코드를 짜는게 어려웠다.처음 시간초과가 발생한 이유는 sum 때문이었는데, sum은 시간복잡도가 O(n)이기 때문에 내가 처음 작성한 것은 시간복잡도가 초과할 수 밖에 없는 구조였다.이를 고려하기 위해 계속 업데이트한 큐의 sum을 구하는게 아니라 각각 처음 구한 합에서 popleft() 한값만을 빼주고, app..

[코테 - py] 과제 진행하기

https://school.programmers.co.kr/learn/courses/30/lessons/176962 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 과제에 대한 순서를 출력하는 큐 문제였다. 구현 +큐 문제였는데 풀다가 계속 막혀서 결국 풀이를 살짝 보고 풀었다.다음에 복습을 해야겠다. from collections import dequedef solution(plans): answer = [] def time(s): h, m = map(int, s.split(":")) temp = h * 60 + m..

[알고리즘, 자료구조] Queue , Stack

1. Queue - 선입선출 (FIFO) - 먼저 저장한 데이터가 먼저 출력 -> enqueue : rear에 데이터가 추가 -> dequeue : front에서 데이터를 꺼냄 1) List 기반 Queue 구현 enqueue - O(1) dequeue - O(n) 2) LinkedList 기반 Queue 구현 enqueue - O(1) dequeue - O(1) # list 기반 queue q = [] # enqueue O(1) q.append(1) q.append(2) q.append(3) # dequeue O(n) q.pop(0) q.pop(0) #linked List 기반 queue from collections import deque # queue 선언 q = deque() # enqueue O..