Language
📌 PriorityQueue 란?일반적인 Queue는 FIFO(First In, First Out) 형식의 자료구조입니다. (선입 선출)우선순위 큐(Priority Queue)는 들어가는 순서와 상관없이 우선순위가 높은 데이터가 먼저 Out되는 자료구조더보기🍎 힙(Heap)이란?➡️ 최솟값 또는 최댓값을 빠르게 찾아내기 위해 완전 이진트리 형태로 만들어진 자료구조최대 힙 : 최대 값이 우선순위인 큐최소 힙 : 최소 값이 우선순위인 큐 📌 PriorityQueue 선언 방법🥐 기본형 (낮은 숫자가 우선순위)PriorityQueue pQ = new PriorityQueue(); 🥐 우선순위가 높은 숫자가 먼저 나옴 (큰 숫자)PriorityQueue pQ = new PriorityQueue(Coll..
📌 Stack삽입과 삭제 연산이 후입선출(LIFO)로 이루어지는 자료구조➡️ 삽입과 삭제 연산이 한 쪽에서만 일어남❗️ DFS(Depth First Search) 깊이 우선 탐색, 백트래킹에서 주로 사용됨!더보기❓ 후입선출이란? - 가장 마지막에 넣었던 값을 먼저 빼내는 방식- ex. 웹브라우저 방문 기록 (이전으로 누르면 바로 직전의 창으로 돌아감) ✔️ 스택 용어 위치top : 삽입과 삭제가 일어나는 위치연산push : top에 새로운 데이터를 삽입하는 연산pop : top 위치에 현재 있는 데이터를 삭제하고 확인하는 연산peek : top 위치에 현재 있는 데이터를 단순 확인하는 연산 📌 Queue삽입과 삭제 연산이 선입선출(FIFO)로 이루어지는 자료구조➡️ 삽입과 삭제 연산이 양 방향에서..
📌 Deque 란? Deque(Double Ended Queue)는 양방향 대기열이라 불리는 자료구조양방향으로 열려있는 구조로 Queue와 비슷하지만, Stack과 Queue와 달리 LIFO, FIFO와 같은 순서에 구속되지 않음 Stack 및 Queue를 모두 사용 가능deque는 양쪽으로 데이터를 추가하고 제거할 수 있기 때문에 Stack과 Queue를 모두 사용할 수 있는 것이 장점 !!➡️ 하지만, 양 끝만 데이터 수정이 가능함 📌 Deque 사용법 ⚡️ 선언Deque deque = new LinkedList();Deque deque = new ArrayDeque(); ⚡️ 삽입 add()마지막에 원소를 삽입한다. 용량 초과 시 예외(Exception) 발생addFirst(..
⚡️ Scanner 평소 Scanner를 통해 입출력을 진행하였는데, 복잡한 알고리즘을 풀면 시간초과가 발생하는 경우가 많았다. 시간 초과를 해결하기 위해 알아보다가 BufferedReader를 사용한다는 것을 알고 정리해보려한다 📌 Buffer 임시 저장 공간이라고 생각할 수 있다. 어떤 데이터가 전송 될 때, 일시적으로 저장되는 메모리 영역이다. BufferedReader / BufferedWriter는 버퍼를 사용하여 읽기와 쓰기를 진행하는 함수이다. 버퍼를 사용하지 않고 입력하면 입력하자마자 바로 프로그램에 전달된다. 버퍼를 사용해서 입력하면 입력할 때마다 한 문자씩 버퍼로 전달한다. ➡️ 버퍼가 가득 차거나 혹은 개행 문자가 나타나면 버퍼의 내용을 한 번에 프로그램에 전달한다. 입력받자마자 바로..