728x90
스택
스택은 후입선출(Last In First Out)의 구조를 갖고있다. 따라서 가장 늦게 들어온 데이터가 가장 먼저 반출된다. 이는 상자를 아래에서 위로 하나씩 쌓아올리는 것으로 생각할 수 있다. 상자를 쌓아올린 뒤에 상자를 다른 곳에 옮길 때 중간이나 처음이 아닌 가장 위에있는 상자를 먼저 들어서 옮기는 것이 효율적이다.
큐
큐는 선입선출(First In First Out)의 구조를 갖고있다. 따라서 가장 먼저 들어온 데이터가 가장 먼저 반출된다. 이것은 식당에 손님들이 줄을 서는 것을 생각해보면 알 수 있다. 손님들이 식당 앞에 줄을 선 후에 입장할 때는 가장 먼저 온 손님 즉, 가장 앞에 있는 손님들이 먼저 식당에 입장한다.
스택과 큐는 어려운 개념이 아니다. 하지만 이러한 성질을 이해했을 때 알고리즘 또는 다른 로직을 효율적으로 설계할 수 있을 것이다.
'CS > 자료구조' 카테고리의 다른 글
[자료구조] 중위, 후위 순회를 이용한 전위순회 구하기 (0) | 2021.09.28 |
---|---|
[자료구조] 트리의 표현과 순회 (0) | 2021.09.21 |
[자료구조] 트리 (0) | 2021.09.21 |
[자료구조] Array와 Linked List의 차이는 무엇일까? (0) | 2021.09.08 |
[자료구조] Hash Table : 충돌이 발생하는 이유와 해결 방법 (0) | 2021.09.06 |