반응형
LIFO(Last-IN-First-Out)
어떠한 데이터들을 순차적으로 저장할 수 있으며 입구와 출구가 하나밖에 존재하지 않는 자료구죠이다.
- pop스택의 가장 최상위(마지막)에 위치한 데이터를 추출한 후에 스택에서 삭제한다
- push스택의 가장 최상위(마지막)에 데이터를 삽입한다
- clear스택에 저장된 모든 데이터를 삭제하고 스택을 초기화한다
- peek스택의 가장 최상위(마지막)에 위치한 데이터를 추출한다.pop 메서드와는 달리 스택에서 데이터를 삭제하지 않는다
-
class JkStack { int top; int[] stack; int size; public JkStack(int size) { top = -1; stack = new int[size]; this.size = size; } public int peek() { return stack[top]; } public void push(int value) { stack[++top] = value; System.out.println(stack[top] + " Push"); } public int pop() { System.out.println(stack[top] + " Pop"); return stack[top--]; } public void printStack() { System.out.println("-- Stack List --"); for (int i = top; i >= 0; i--) System.out.println(stack[i]); System.out.println("-- End List --"); } } public class Stack { public static void main(String args[]) { // 스택 동작 테스트 JkStack st = new JkStack (100); st.push(5); st.push(2); st.push(3); st.push(4); st.push(1); st.printStack(); st.pop(); st.pop(); st.push(15); st.printStack(); st.peek(); st.pop(); st.pop(); st.pop(); st.pop(); st.push(30); st.peek(); } }
'Language > 자료구조' 카테고리의 다른 글
그래프(Graph) 과 DFS, BFS 구현 (0) | 2021.11.13 |
---|---|
배열에서 검색 (0) | 2021.07.19 |
Tree 종류 (0) | 2021.07.06 |