Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- MySQL
- 카카오클라우드스쿨2기
- Python
- reshape
- pandas
- 야학
- Database
- 연산자
- 머신러닝
- 개발자
- 데이터베이스 개론
- 머신러닝(딥러닝)
- 생활코딩 데이터베이스
- LeNet
- 머신러닝야학
- Java
- flatten
- tensorflow
- 판다스
- 파이썬
- 생활코딩 머신러닝야학
- 데이터베이스
- JavaScript
- 생활코딩
- 딥러닝
- CNN
- 이것이 자바다
- 데이터베이서
Archives
- Today
- Total
IT's 우
파이썬 자료구조와 알고리즘_스택(Stack), 큐(Queue) 본문
728x90
스택(stack)은 배열의 끝에서만 데이터를 접근할 수 있는 선형 자료구조다. 스택은 배열 인덱스 접근이 제한되며, 후입선출(last in, first out, LIFO) 구조다. 스택의 동작의 시간복잡도는 모두 O(1)이다.
스택의 동작
- push: 스택 맨 끝(맨 위)에 항목을 삽입한다.
- pop: 스택 맨 끝 항목을 반환하는 동시에 제거한다.
- top/peak: 스택 맨 끝 항목을 조회한다.
- empty: 스택이 비어 있는지 확인한다.
- size: 스택 크기를 확인한다.
파이썬에서는 리스트의 append()와 pop() 메서드로 스택을 구현할 수 있다.
큐(queue)는 스택과 다르게 항목이 들어온 순서대로 접근 가능하다. 즉, 먼저 들어온 데이터가 먼저 나가는 선입선출(first in, first out, FIFO) 구조다. 큐 역시 배열의 인덱스 접근이 제한된다. 큐의 동작의 시간복잡도는 모두 O(1)이다.
큐의 동작
- enqueue: 큐 뒤쪽에 항목을 삽입한다.
- dequeue: 큐 앞쪽의 항목을 반환하고, 제거한다.
- peek/front: 큐 앞쪽의 항목을 조회한다.
- empty: 큐가 비어 있는지 확인한다.
- size: 큐의 크기를 확인한다.
출처: 파이썬 자료구조와 알고리즘, 미아 스타인 지음 최길우 옮김
728x90
반응형
'알고리즘 > 파이썬 알고리즘' 카테고리의 다른 글
파이썬 자료구조와 알고리즘_소수 (0) | 2021.03.14 |
---|---|
파이썬 자료구조와 알고리즘_피보나치 수열 (0) | 2021.03.13 |
파이썬 자료구조와 알고리즘_random 모듈 (0) | 2021.03.13 |
파이썬 자료구조와 알고리즘_최대공약수 (0) | 2021.03.13 |
파이썬 자료구조와 알고리즘_진법 변환 (0) | 2021.03.13 |