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 | 31 |
Tags
- sqlalchemy
- 개발부트캠프
- 초격자캠프
- cafepos
- Test-Driven Development
- 리눅스
- 테스트 주도 개발
- 다형성
- 우분투
- 오즈코딩스쿨모두의매블챌린지
- TDD
- flask-sqlalchemy
- 크롤링
- 오즈코딩스쿨#모두의매블챌린지
- 모두의매블챌린지
- 명령어
- 프로젝트
- 오즈 코딩스쿨
- ORM
- 개발 방법론
- 오즈코딩스쿨
- 오즈코딩스쿨후기
- git충돌
- mini-project
- flask
Archives
- Today
- Total
codewithbeom 님의 블로그
스택(stack) 본문
스택(stack)은
컴퓨터 과학에서 자주 사용되는 자료구조 중 하나로,
프로세스를 구성하는 4개의 요소 중 한 부분이며 함수의 호출에 관여한다.
✔️ 후입선출(LIFO: Last In, First Out) 원칙을 따른다.
즉, 나중에 삽입된 데이터가 먼저 삭제된다.
✔️ 주요 연산은 다음과 같다
1. push : 스택의 맨 위에 데이터를 추가
2. pop : 스택의 맨 위에 있는 데이터를 제거하고 반환
3. peek : 스택의 맨 위에 있는 데이터를 제거하지 않고 반환
4. isEmpty : 스택이 비어있으면 True, 아니면 False 반환
5. isFull : 스택이 꽉 차있으면 True, 아니면 False 반환
✔️스택은 다양한 용도로 사용될 수 있다.
예를 들어 함수 호출을 추적하는데 사용되며, 웹 브라우저의 뒤로 가기 기능이나 문자열 역순 변환 등의 기능에서도 활용된다.
✔️ 스택 -> 클래스로 구현
: 자료구조는 함수를 기반으로 하는 절차적 프로그래밍보다는 클래스를 기반으로 하는 객체 지향 프로그래밍 기법을 이용해
구현하는 것이 훨씬 좋다. 이것은 자료 구조의 추상 자료형이 클래스의 개념과 정확히 일치하기 때문이다.
✔️ 문자열 역순 출력 프로그램 -> 코드로 나타내기

-> 문자열 입력 : 오늘 저녁은 치맥이다!
-> 문자열 출력 : !다이맥치 은녁저 늘오