반응형 Knowledge15 [자료구조][Java] 데크(Deque) [ 목차 ] 📢 데크 양쪽에서 삽입과 삭제가 모두 가능한 자료구조 Deque : Doubly-ended Queue Stack + Queue 한 상태 📢 데크의 기본 구조 데크의 기본 구조는 양방향에서 삽입과 삭제가 가능한 구조 일부 기능을 제한하여 용도에 맞게 변형이 가능하다. 💻 입력제한 데크(Scroll) 한 쪽의 입력을 제한한 데크 💻 출력제한 데크(shelf) 한 쪽의 출력을 제한한 데크 💻 그림 예시 📢 Deque 사용 예시 💻 Deque(기본) public class Main { public static void main(String[] args) { //기본 Deque를 이용한 예제 Deque deque = new ArrayDeque(); // Front 부분 입력 deque.addFirst.. Knowledge/자료구조 2023. 8. 9. [자료구조][Java] 큐[Queue] [ 목차 ] 📢 큐(Queue) 선입선출(First In First Out; FIFO) 자료구조 -> 먼저 들어온 데이터가 먼저 나가는 구조이다. 입력 순서대로 데이터 처리가 필요할 때 사용한다.ex(프린터 출력 대기열, BFS(Breath-First Search)) 📈 큐(Queue)의 기본 구조 선입선출 구조를 따른다. 기본적으로 데이터 추가, 꺼내기, 큐 공간 확인 동작으로 이루어져있다. 데이터가 꺼내는 쪽이 Front이고, 데이터를 꺼내는 동작을 Dequeue 라고 한다. 데이터를 추가하는 쪽이 Rear이고, 데이터가 들어오는 동작을 Enqueue 라고 한다. 📈 큐(Queue)의 기본 연산 데이터 추가(Enqueue) - 큐에 데이터 추가 데이터 꺼내기(Dequeue) - 큐에 데이터 꺼내기 📈.. Knowledge/자료구조 2023. 8. 9. [자료구조][Java] Stack이란? 📢 스택(Stack) 후입선출(後入先出)의 특성을 가지는 자료구조를 일컫는다. 맨 마지막의 데이터가 가장 먼저 출력이 된다. 🧨 예시 스택은 "쌓여 있는 팬케이크" 라고 생각하는 것이 좋다. ex) 팬케이크를 하나씩 쌓게 되면 먼저 내려놓은 것이 맨 아래에 있고 나중에 쌓은 것이 맨 위에 있을 것이다. 즉, Last In First Out(LIFO) -> 가장 나중에 올라온 것이 가장 먼저 나가게 되는 것이다. 🧨 스택의 종류 힙 영역 메모리에서 일반적인 데이터를 저장하는 스택 스택과 스택 영역 메모리에서 프로그램의 각 분기점에 변수와 같은 정보를 저장하기 위한 스택 📈 스택의 개념 스택은 해당 이미지처럼 출입구가 1개이다. 즉, 데이터의 삽입과 제거가 한 곳에서 이루어진다. 먼저 들어간 데이터가 늦게 .. Knowledge/자료구조 2023. 8. 7. 이전 1 2 다음