YJ의 새벽
JAVA (Stack,Queue) 본문
- Stack
(항아리구조)
--ex)수식계산, 웹브라우저 뒤로/앞으로 등등
--LIFO (Last in First Out)
--마지막에 저장된 것을 제일 먼저 꺼낸다.
-- 1 2 3 4 5 를 넣으면 (push)
5 4 3 2 1 로 나온다. (pop)
--배열이 적합.
- Queue (인터페이스, 객체생성x)
(파이프구조)
--ex) 최근사용문서 , 인쇄작업대기목록 등...
--FIFO (First In First Out)
--제일먼저 저장한것을 제일먼저 꺼낸다.
-- 1 2 3 4 5 넣으면 (offer)
1 2 3 4 5 로 나온다 (poll)
*파이브구조
--링크드리스트 적합.
***** Stack & Queue 예제
import java.util.LinkedList;
import java.util.Queue;
import java.util.Stack;
public class Example {
public static void main(String[] args) {
Stack st = new Stack();
Queue q = new LinkedList();
st.push("0");
st.push("1");
st.push("2");
q.offer("0");
q.offer("1");
q.offer("2");
while(!st.isEmpty()) { --Stack 값 꺼내기
System.out.println(st.pop()); -- 2 1 0
}
while(!q.isEmpty()) { --Queue 값 꺼내기
System.out.println(q.poll()); -- 0 1 2
}
}
}
'SelfStudy > JAVA' 카테고리의 다른 글
JAVA (Comparable , Comparator) (0) | 2023.02.02 |
---|---|
JAVA (Iterator, Arrays) (0) | 2023.02.02 |
JAVA (ArrayList,LinkedList) (0) | 2023.02.01 |
JAVA (Collections Framework) (0) | 2023.02.01 |
JAVA (CS) (0) | 2023.01.30 |
Comments