반응형
스택
데이터를 제한적으로 접근할 수 있는 자료구조(한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 자료 구조)
마지막에 쌓은 데이터를 먼저 빼낼 수 있는 자료구조(LIFO = Last In First Out)
스택은 LIFO(Last In First Out),FILO(First In Last Out) 데이터 관리 방식을 가지고 있다.
주요 기능으로는 데이터를 집어 넣는 push() / 데이터를 꺼내는 pop()이 존재한다.
스택의 장단점
장점
구조가 단순함 (구현이 쉬움)
데이터 읽기,저장 속도가 빠름
단점
데이터 최대 갯수를 미리 지정해줘야함(파이썬에서 재귀함수는 1000번까지 호출 가능)
저장 공간의 낭비가 발생 가능성이 있음(저장 공간을 미리 확보해야하기 때문에)
스택은 보통 배열 구조를 활용해 구현해야 최고 성능을 낼 수 있기 때문에 이러한 문제가 발생 할 수 있음
스택은 이렇게 작동해요
stack = []
stack.append(1)
stack.append(2)
print(stack)
# [1, 2]
print(stack.pop())
# 2
반응형
'알고리즘 > 알고리즘,자료구조' 카테고리의 다른 글
파이썬을 활용해보자 [알고리즘 풀이 꿀팁] 1편 (0) | 2021.10.30 |
---|---|
알고리즘/자료구조 - Hash Table(해쉬 테이블) (0) | 2021.10.24 |
알고리즘/자료구조 - Quick Sort(퀵 정렬) (0) | 2021.10.22 |
알고리즘/자료구조 - 큐 Queue (0) | 2021.10.19 |
알고리즘/자료구조 - Array(배열) 알아보기 (0) | 2021.10.18 |
댓글