Java
Java(Stack)
yoooon1212
2024. 5. 19. 18:50
Stack(스택)
데이터를 일시적으로 저장하기 위한 선형 자료구조
'후입선출(Last in, First Out ; LIFO) 원칙을 따른다. 가장 마지막에 추가된 요소가 가장 먼저 제거된다는 것을 의미한다.
(예를 들어, 식상에서 사용된 접시를 쌓아 두었다가 사용할 때 가장 위에 있는 접시부터 꺼내는 것과 비슷하다.)
스택의 주요 연산
- Push: 스택에 요소를 추가하는 연산입니다. 스택의 맨 위에 새로운 요소를 놓습니다.
- Pop: 스택에서 요소를 제거하는 연산입니다. 스택의 맨 위에 있는 요소를 꺼내며, 그 요소는 스택에서 삭제됩니다.
- Peek 또는 Top: 스택의 맨 위에 있는 요소를 반환하지만, 제거하지는 않습니다. 스택의 최상위 요소를 확인할 때 사용합니다.
- IsEmpty: 스택이 비어 있는지 확인합니다. 비어 있다면 true를, 그렇지 않다면 false를 반환합니다.
- Size: 스택에 저장된 요소의 개수를 반환합니다.
배열
- 동일한 데이터 타입을 순서에 따라 관리하는 자료 구조
- 정해진 크기가 있음(배열)
- 요소의 추가와 제거시 다른 요소들의 이동이 필요함
- 배열의 i 번째 요소를 찾는 인덱스 연산이 빠름
- jdk 클래스 : ArrayList, Vector
예시1)
예시2)