Stack 2

[자료구조-03] 스택(Stack)

1. 스택(Stack)이란? - 데이터를 일시적으로 저장하기 위해 사용하는 자료구조 - 후입선출 구조를 가짐 - 후입선출(LIFO, Last In First Out) : 가장 나중에 넣은 데이터를 가장 먼저 꺼냄 - 푸시(push) : 스택에 데이터를 넣는 작업 팝(pop) : 스택에서 데이터를 꺼내는 작업 꼭대기(top) : 푸시와 팝을 하는 위치 바닥(bottom) : 스택의 가장 아랫부분 ※ Java 프로그램에서 메서드를 호출하고 실행할 때 프로그램 내부에서는 스택을 사용함 void x() {...} void z() { x(); } int main() { z(); } main 실행 - z 실행 - x 실행(아래 그림) - x 종료 - z 종료 - main 종료 2. 스택 구현 1) 필드 - int형..

공부/자료구조 2021.04.18

[Java-11] 컬렉션 프레임웍 - Stack, Queue, Iterator, ListIterator, Enumeration

1. 스택(Stack), 큐(Queue) 1) 스택과 큐의 차이 - 스택은 'LIFO', 큐는 'FIFO'임 - LIFO(Last In First Out) : 마지막에 저장한 데이터를 가장 먼저 꺼내는 구조 - FIFO(First In First Out) : 처음에 저장한 데이터를 가장 먼저 꺼내는 구조 - 스택(LIFO)는 0, 1, 2 순으로 저장(push)한 뒤, 2, 1, 0 순으로 추출(pop) - 큐(FIFO)는 0, 1, 2 순으로 저장(push)한 뒤, 0, 1, 2 순으로 추출(pop) Q. 스택과 큐를 구현하기 위해서는 어떤 컬렉션 클래스를 사용하는 것이 좋을까? A1. 스택은 순차적으로 데이터를 추가 및 삭제하므로 ArrayList와 같은 배열기반의 컬렉션 클래스가 적합함 A2. 큐는..

공부/Java 2021.04.14