WEB/java

[구글링] stack & queue

고규마 2017. 12. 20. 14:01

1. Stack

마지막에 저장한 데이터를 가장 먼저 꺼내게 되는 LIFO(Last In First Out)구조

순차적 데이터 추가/삭제하는 ArrayList적함

사용 예: 수식계산수식괄호검사, undo/redo, 뒤로/앞으로(웹브라우져)


Stack st = new Stack<>();


pop(); push(); peek(); empty();


2. Queue

처음에 저장한 데이터를 가장 먼저 꺼내게 되는 FIFO구조

데이터의 추가/삭제가 편한 LinkedList적합

사용 예 : 최근 사용문서, 인쇄작업대기목록, 버퍼(buffer)


Queue q = new LinkedList();  LinkedList implements Queue?????


peek();     return null when queue is empty.

poll();       꺼내온다. 비어있으면 null

revmove(); 꺼내온다. 비어있으면 예외발생

offer();      저장한다. 성공하면 true, 실패하면 false.

isEmpty();