1. 스택
1) 스택이란?
- 물건을 쌓아 올리듯 자료를 쌓아 올린 형태의 자료구조
- 선형구조이다. (자료 간의 관계가 1:1 관계를 갖는다.)
- 후입선출구조 (LIFO)
2) 주요 메서드
Stack st = new Stack();
메서드 | 설명 |
boolean empty() | Stack이 비어있는지 확인 |
Object peek() | Stack의 맨 위에 저장된 객체를 반환 pop()과 달리 Stack에서 객체를 꺼내지 않음 비었을 때는 EmptyStackException 반환 |
Object pop() | Stack의 맨 위에 저장된 객체를 꺼냄 비었을 때는 EmptyStackException 반환 |
Object push(Object item) | Stack에 객체(item)을 저장 |
int search(Object o) | Stack에서 주어진 객체(o)를 찾아서 그 위치를 반환 못 찾으면 -1 반환(배열과 달리 위치가 1부터 시작) |
2. 큐
1) 큐란?
- 선입선출구조 (FIFO)
2) 주요 메서드
Queue q = new LinkedList();
메서드 | 설명 |
boolean add(Object o) | 지정된 객체를 Queue 에 추가 성공하면 true 반환, 저장공간이 부족하면 IllegalstateException 발생 |
Object element() |
삭제없이 요소를 읽어옴 peek와 달리 Queue가 비었을 때 NoSuchElementException 발생 |
boolean offer(Object o) | Queue 에 객체를 저장 성공하면 true, 실패하면 false 반환 |
Ojbect peek() |
삭제없이 요소를 읽어옴 Queue 가 비어있으면 null을 반환 |
Object poll() |
Queue 에서 객체를 꺼내서 반환. 비어있으면 null을 반환 |
Object remove() | Queue 에서 객체를 꺼내 반환 비어잇으면 NoSuchElementException 발생 |
'Algorithm > Study' 카테고리의 다른 글
Tree, BFS (0) | 2024.02.06 |
---|---|
LinkedList (0) | 2024.02.05 |
부분집합, 비트연산, 바이너리 카운팅 (0) | 2024.02.01 |
완전 탐색 (0) | 2024.01.30 |
알고리즘 / 재귀 (0) | 2024.01.29 |