휴지통/알고리즘 & 자료구조
Stack
by 신재권
2021. 7. 15.
package review1;
import java.util.Stack;
public class Stack02 {
// 스택은 LIFO (Last-in , First-out)의 구조이다.
// 즉 한쪽 끝에서만 자료를 넣을 수 있고 뺄 수 있다.
// 스택을 직접 구현할때는 데이터의 추가/삭제가 쉬운 LinkedList로 구현하는 것이 적절하다.
public static void main(String[] args) {
Stack<Integer> stack = new Stack<Integer>();
//데이터 삽입
stack.push(1);
stack.push(3);
stack.push(5);
System.out.println(stack);
//맨위에 쌓여있는 데이터반환(제일 마지막에 들어간 데이터 반환)
System.out.println(stack.peek());
//맨 위에 있는 데이터 삭제
stack.pop();
System.out.println(stack);
//데이터 찾기
System.out.println(stack.search(1)); //스택은 배열과 달리 위치 1 시작 1은 마지막 위치(2에 존재)
System.out.println(stack.search(3));
stack.pop();
stack.pop();
//스택이 비어있는지 확인하기
if(stack.empty())
System.out.println("Stack is Empty !!");
}
}