본문 바로가기

stack2

[자료구조] 덱(Dequeue, Double-ended Queue) 덱 (Dequeue, Double-ended Queue) ■ 정의 - Dequeue(덱)은 양쪽에서 넣고 빼고가 가능한 큐 - 어떤 쪽으로 입력하고 어떤 쪽으로 출력하느냐에 따라 스택, 큐 모두 사용 가능 - 스케줄링이 복잡해질수록 큐와 스택보다 효율이 잘 나옴 ■ 메소드 Deque dq = new LinkedList(); 메소드 의미 addFirst(int item) 덱의 앞 쪽에 item 삽입, 용량 초과 시 예외 발생 offerFirst(int item) 덱의 앞 쪽에 item 삽입, 용량 초과 시 false 리턴 addLast(int item) 덱의 뒤 쪽에 item 삽입, 용량 초과 시 예외 발생 offerLast(int item) 덱의 뒤 쪽에 item 삽입, 용량 초과 시 false 리턴 r.. 2023. 2. 24.
[자료구조] 스택(Stack) / 큐(Queue) 스택(Stack) ■ 정의 - 데이터를 일시적으로 쌓아 놓는 자료구조 - 데이터의 입력과 출력 순서는 후입선출 (LIFO: Last In First Out) ■ 메소드 Stack s = new Stack(); Stack s = new Stack(int capacity); // 스택의 capacity 결정 메소드 의미 push(int item) 스택에 데이터를 저장 pop() 스택의 꼭대기에 있는 데이터를 제거하고, 그 값을 반환 isFull() 스택이 empty 상태인지 확인 isEmpty() 스택이 full 상태인지 확인 clear() 스택의 모든 요소를 삭제 peek() 스택의 가장 최상위(마지막)에 위치한 데이터 출력 capacity() 스택의 용량 확인 (스택 전체 크기) size() 스택의 크기.. 2023. 2. 22.