스택과 큐는 모든 프로그래머가 한 번쯤은 접해보는 대표적인 선형 자료구조입니다. Java 및 Kotlin에서도 다양한 구현체가 제공되지만, 실제로 어떤 자료구조를 써야 할지 헷갈릴 수 있습니다. 특히 Stack, Queue, ArrayDeque는 모두 삽입/삭제 연산을 제공하면서도 구조와 성능, 사용 목적이 다르기 때문에 정확한 이해가 필요합니다.이 글에서는 각 자료구조의 특징과 차이점을 비교하고, 어떤 상황에 어떤 자료구조를 선택해야 하는지 실용적인 가이드를 제공합니다.기본 개념 요약Stack (스택)LIFO (Last In, First Out) 구조가장 나중에 삽입된 요소가 가장 먼저 제거됨Java의 Stack 클래스는 Vector를 상속 → 동기화 처리됨 (synchronized)Kotlin에서도 ..