1. 스택
- 스택은 데이터를 일시적으로 저장하기 위한 자료구조로, 가장 나중에 넣은 데이터를 가장 먼저 꺼냅니다.
- 데이터의 입력과 출력 순서는 후입선출(LIFO, Last In Fisrt Out)
- 스택에 데이터를 넣는 작업을 푸시(push)
- 스택에 데이터를 꺼내는 작업을 팝(pop)
- 푸시와 팝을 하는 위치를 꼭대기(top)
- 스택의 가장 아랫부분을 바닥(bottom)
- 스택 만들기
1) 스택 본체용 배열 (stk) : 푸시된 데이터를 저장하는 스택 본체의 배열
2) 스택 용량 (max) : 스택의 용량(스택에 쌓을 수 있는 최대 데이터 수)을 나타내는 필드
3) 스택 포인터 (ptr) : 스택에 쌓여 있는 데이터 수를 나타내는 필드. 스택 포인터(statck pointer)
4) 생성자(IntStack) : 생성자는 스택 본체용 배열을 생성하는 등 준비 작업을 수행합니다.
5) 푸시 메서드 (push) : 스택에 데이터를 푸시하는 메서드
6) 팝 메서드 (pop) : 스택의 꼭대기에서 데이터를 팝(제거)하고 그 값을 반환하는 메서드
7) 피크 메서드(peek) : 스택의 꼭대기에 있는 데이터를 감시하는 메서드
8) 검색 메서드(indexOf) : 스택 본체의 배열 stk에 x와 같은 값의 데이터가 포함되어 있는지, 포함되어 있다면 배열의 어디에 들어있는지를 조사하는 메서드
9) 스택의 모든 요소를 삭제하는 메서드 (clear) : 스택에 쌓여 있는 모든 데이터를 삭제하는 메서드
10) 용량을 확인하는 메서드 (capacity) : 스택의 용량(max의 값)을 반환하는 메서드
11) 데이터 수를 확인하는 메서드 (size) : 현재 스택에 쌓여 있는 데이터 수 (ptr의 값)을 반환하는 메서드
12) 스택이 비어 잇는지 검사하는 메서드 (isEmpty) : 스택이 비어 있는지 검사하는 메서드, 스택이 비어 있으면 true, 그렇지 않다면 false를 반환
13) 스택이 가득 찼는지 검사하는 메서드 (isFull) : 스택이 가득 찼는지 검사하는 메서드, 스택이 가득 찼으면 true, 그렇지 않다면 false를 반환
14) 스택 안에 있는 모든 데이터를 표시하는 메서드 (dump) : 스택에 쌓여 있는 모든 데이터를 바닥에서 꼭대기 순으로 표시하는 메서드, 비어 잇으면 '스택이 비어있다고 표시'
'WEB > 자료구조' 카테고리의 다른 글
5일차 정리(버블정렬, 단순선택정렬, 단순삽입정렬, 셀정렬) (0) | 2019.02.19 |
---|---|
4일차 정리(큐, 재귀의 기본) (0) | 2019.02.13 |
2일차 정리(Arrays.binarySearch에 의한 이진 검색, 자연정렬) (0) | 2019.02.11 |
1일차 정리(순서도, 클래스, 선형 검색, 이진검색) (0) | 2019.02.11 |
3일차 정리(스택 자료구조, 큐 자료구조, 데크 자료구조, 트리 자료구조, 이진 트리) (0) | 2019.02.10 |