list
set
dictionary
collections.deque
ref Show
https://www.ics.uci.edu/~pattis/ICS-33/lectures/complexitypython.txt n과 m의 길이가 모두 100,000이라서 시간복잡도가 10만 * 10만 하면 1초안에 계산이 안되는건 알고있습니다! C의 배열을 모두 하나씩 넣어봐야하기 때문에 m의 길이 10만은 꼭 써야하는크기이고 그러면 n의 길이 10만을 줄이는 것 밖에 없는데 최악의 경우 모두가 큐일때는 새로운값을 저장하고 temp값을 넘겨줘야하는 상황이 생겨서 모든 queuestack 배열을 검사할 수 밖에 없지 않나요? 너무 궁금합니다 ㅠㅠㅠ
0. 자료구조? 알고리즘?
1.1. 배열의 필요성
1.2. 배열의 장단점(파이썬이 아닌 C로 봤을 때) 장점:
단점:
1.3. 파이썬에서의 배열
2. 큐 : Queue2.1. 큐의 구조
2.2. 큐와 관련된 용어
2.3. 큐가 많이 사용되는 예시
2.4. 큐의 시간 복잡도
2.5. 큐의 장단점장점:
단점:
2.6. 파이썬에서의 Queue
2.6.1. queue.Queue() : FIFO
2.6.2. queue.LifoQueue() : LIFO (Last in, First out)
2.6.3. queue.PriorityQueue() : 우선순위에 따라 dequeue
연습
3. 스택 : Stack
큐와의 차이점
3.1. 스택의 구조스택은 LIFO, FILO 구조이지만, LIFO, FILO라고 말하기보다는 통상 이러한 구조를 스택 Stack 그 자체로 부름.
3.2. 스택 관련 용어
3.3. 스택의 활용
3.4. 스택의 구현 방법
3.5. 파이썬에서의 Stack
Reference
|