1. LinkedList
Queue<Integer> MinHeap = new PriorityQueue<>(); Queue<Integer> MaxHeap = new PriorityQueue<>(Comparator.reverseOrder());
2. Stack
Stack<Integer> stack = new Stack<>(); Stack<String> stack = new Stack<>(); stack.push(value); //값 추가 stack.pop() // 값 제거 stack.clear() //초기화 stack.peek() // 가장 위에있는 값 출력 stack.size() // 스택의 크기 stack.empty() // 스택이 비어있는지 (boolean) stack.contains(value) // value가 있는지 (boolean)
3. Queue
// FIFO (First In First Out) 형태 // LinkedList를 활용해서 생성 Queue<Integer> queue = new LinkedList<>(); Queue<String> queue = new LinkedList<>(); queue.add(value) // 값 추가 queue.offer(value) // 값 추가, add와 동일 queue.poll() // 첫번째 값을 반환하고 제거, 없다면 null 반환 queue.remove() // 첫번째 값 제거 queue.clear() // 초기화 queue.peek() // 첫번째 값 반환
4. PriorityQueue
// 다익스트라, minheap, maxheap 문제 풀때 Queue<Integer> MinHeap = new PriorityQueue<>(); Queue<Integer> MaxHeap = new PriorityQueue<>(Comparator.reverseOrder());