알고리즘/스택 | 큐
[JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기
목차
728x90
반응형
스택은 데이터를 일시적으로 저장하기 위한 자료구조로, 가장 나중에 넣은 데이터를 가장 먼저 꺼냅니다.
스택
스택(stack)은 '마른 풀을 쌓은 더미', '겹겹이 쌓음'을 뜻합니다.
데이터의 입력과 출력순서는 후입선출(LIFO , Last In First Out)입니다.(가장 나중에 넣은 데이터를 먼저 꺼냅니다.)
삽입(Push) : 스택에 데이터를 넣는 작업
삭제(Pop) : 스택에서 데이터를 꺼내는 과정
읽기 (Peek) : 마지막 위치(top)에 해당하는 데이터를 읽습니다.
삽입과 삭제를 하는 위치를 꼭대기(top) 이라 하고, 스택의 가장 아랫부분을 바닥(bottom)이라고 합니다.
용도
JAVA 프로그램에서 메소드를 호출하고 실행할 때 프로그램 내부에서는 스택을 사용합니다.
![[JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 용도 [JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 용도](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
위의 프로그램은 main메소드를 포함하여 총 4개의 메소드로 이루어져 있습니다.
![[JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 용도 [JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 용도](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
스택 구현
Int를 저장하는 스택을 구현하는 프로그램을 만들어 보겠습니다.
스택 클래스 (필드, 생성자, 메소드)
![[JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 스택 구현 [JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 스택 구현](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
![[JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 스택 구현 [JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 스택 구현](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
스택을 사용하는 프로그램
![[JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 스택 구현 [JAVA] 자료구조 - 스택 (Stack) 배열로 구현하기 - 스택 구현](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
이상으로 스택에 대해서 알아보았습니다.
728x90
반응형
'알고리즘 > 스택 | 큐' 카테고리의 다른 글
[JAVA] 프로그래머스 (스택, 큐) 기능개발 (0) | 2021.07.24 |
---|---|
[JAVA] 자료구조 - 큐(Queue) , 배열과 링 버퍼(ring buffer)로 구현하기 (0) | 2021.07.23 |
댓글