| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 31 |
Tags
- 해군
- 벨로퍼트
- 전달인자
- 42서울
- Til
- Front-end
- 정보보호병
- 프론트엔드
- Node Sass version 5.0.0 is incompatible with ^4.0.0.
- 훅
- 열심히하자준희야
- 42서울후기
- Argument
- 매개변수
- 42서울 온라인 테스트
- Stack Data Structure
- scss
- Firebase
- hooks
- ReactHooks
- yarn
- NPM
- 리액트
- SASS
- js
- css
- fastcampus
- javascript
- 패스트캠퍼스
- React
Archives
- Today
- Total
천 줄 코딩도 한 삽질 부터
스택 자료구조 : Stack Data Structure 본문
스택이란
Stack은 Abastract Data Type으로, 추상 자료형으로 분류됩니다.
Stack은 기본적으로 후입선출 자료구조이고, FILO라고도 이야기하는데, 여기서 FILO는
F : First
I : In
L : Last
O : Out
말 그대로 먼저 들어온 놈이 먼저 나간다! 입니다
많이 사용하는 비유로 박스 쌓기를 사용하는데, 글 정리를 위해 검색 중 딱 맞는 비유를 찾았습니다.
바로 프링글스!

프링글스를 하나씩 꺼내서 먹는다고 할 때, 우리는 통에 가장 늦게 들어간 칩을 먼저 먹게 되는데,
가장 늦게 들어간 자료를 먼저 꺼내서 쓰고, 가장 먼저 들어간 자료는 가장 마지막에 꺼내서 쓰게 되는 점이 스택 자료구조와 동일합니다.
연산 방법
스택에 데이터를 넣을 때는 push,
스택에서 데이터를 추출할 때는 pop을 사용한다.
구현
파이썬을 이용해 구현해 볼 것이다.
pop연산은 동명의 메서드를 사용하지만,
파이썬에서는 push연산을 append라는 이름의 메서드를 사용한다는 점을 주의하자.
stack = [] #리스트 형태의 빈 stack 생성
stack.append(1) #push연산
stack.append(2)
stack.append(3)
stack.pop() #pop
stack.append(4)
stack.append(5)
stack.pop
print(stack) #[1, 2, 4]

print문을 이용하여, 가장 먼저 push한 최하단 원소부터 출력되고,
pop연산 직전에 넣은 값인 3과 5는 stack에 없는 실행 결과를 볼 수 있다.
Comments