-
CS : Data Structure : Stack & QueueComputer Science/Algorithm, Data Structure 2021. 4. 15. 16:22728x90
Stack
1.
한 쪽 끝에서만 자료를 넣고 뺄 수 있는, LIFO(Last In First Out) 구조이다.
2.
- pop() : 스택에서 가장 위의 항목을 제거한다.
- push(item) : item을 스택의 가장 윗 부분에 추가한다.
- peek() : 스택의 가장 위의 항목을 가져온다. (제거 아님)
- isEmpty() : 스택이 비어있는지 여부를 반환한다.
3.
재귀 알고리즘을 사용하는 경우에 스택이 유용하다.
재귀적으로 함수를 호출할 때, 임시 데이터 값을 스택에 넣어준다.
이 후, backtracking 시 스택의 값을 참조한다.
Queue
1.
먼저 넣은 데이터가 먼저 나오는 FIFO(First In First Out) 구조이다.
2.
- add(item) : item을 큐의 끝부분에 추가한다.
- remove() : 큐의 첫 번째 항목을 제거한다.
- peek() : 큐의 첫 번째 항목을 가져온다. (제거 아님)
- isEmpty() : 큐가 비어있는지 여부를 반환한다.
3.
데이터가 입력된 시간 순서대로 처리해야 할 필요가 있을 때 사용된다.
728x90'Computer Science > Algorithm, Data Structure' 카테고리의 다른 글
CS : Data Structure : Tree & Graph (0) 2021.04.15 CS : Data Structure : Heap (0) 2021.04.15 CS : Algorithm : Sort (0) 2021.04.11 CS : Data Structure : ArrayList & LinkedList (0) 2021.04.06 CS : Algorithm : DFS & BFS (0) 2021.04.01