[자료구조] Kotlin으로 자료구조 이해하기 - Queue(큐)
Queue Queue의 사전적 정의는 '줄, 줄을 서서 기다리다'라는 의미를 갖습니다. 자료구조로서 Queue는 선입선출(FIFO : First In First Out)의 방식으로 데이터를 저장하는 구조를 의미합니다. 예를 들어, 빈 Queue에 1, 2, 3, 4, 5의 순서로 데이터가 들어간다면 들어간 순서대로 1, 2, 3, 4, 5의 순서로 나오게 됩니다. 먼저 들어간게 먼저 나오는 선입선출이라는 키워드를 생각한다면 이해가 쉽습니다. Queue는 위와 같이 선언할 수 있습니다. Stack과 마찬가지로 자바의 Queue를 import하여 사용하지만 Queue는 인터페이스이기 때문에 LinkedList 클래스로 초기화해서 사용하겠습니다. Queue에서 제공하는 주요 기능은 다음과 같습니다. add, ..
2023. 1. 23.
[자료구조] Kotlin으로 자료구조 이해하기 - Stack
Stack Stack의 사전적 의미는 '쌓다, 포개지다'라는 의미로 자료구조로서 Stack은 후입선출(LIFO : Last In First Out) 방식으로 데이터를 저장하는 구조를 의미합니다. 쉽게 말해, 먼저 들어온 데이터부터 하단에 쌓여 가장 늦게 들어온 데이터가 가장 먼저 나가는 구조를 갖게 됩니다. 예를 들어, 빈 Stack에 1,2,3,4,5의 순서로 데이터가 삽입된다면 데이터를 꺼낼 때는 5,4,3,2,1의 순서로 나오게 됩니다. 상자를 쌓을 때 먼저 쌓는 상자가 아래에 쌓이는 상황을 생각하면 될 것 같습니다. Kotlin 자체적으로 Stack이 구현되어 있지는 않지만 "java.util.Stack"을 import 하여 사용할 수 있습니다. Stack 클래스는 다양한 기능을 지원합니다. 키워..
2023. 1. 22.