자료구조1 [Swift][알고리즘][꿀팁] Queue 구현하기 Queue 따로 구현해야 하는 이유? 보통 우리가 Swift에서 Queue를 구현 할 때는 하나의 배열에서 removeFirst()를 이용해 앞에서 빼고 append()를 이용해 뒤로 넣는 방식으로 구현합니다. 하지만, removeFirst()의 경우에는 O(n)의 시간복잡도를 갖기 때문에 많은 양의 원소가 왔다갔다하는 Queue에서 아주 비효율적입니다. (저는 초반에 큐를 이용하는 BFS문제들에서는 시간초과가 안나오다가 갈수록 모든 문제에서 시간초과가 발생하더라구요!) 자, 우선 전체 코드를 한번 읽어보세요! 보통 일반적인 경우에는 큐를 push, pop, empty()정도만 사용하는 것 같아서 저는 3가지만 간단하게 구현해보았습니다. 아래 코드를 완벽하게 이해하기 위해서 Swift Generic T와.. 2022. 3. 21. 이전 1 다음