[swift] 큐 queue

ohtt-iOS·2020년 12월 11일
0

자료구조

목록 보기
3/4
post-thumbnail

개린이가 쓴 글이므로 오류가 있을 수 있음을 미리 알려드립니다 🐹 (꾸벅)

✔️ 큐 ?

First in First out -> FIFO
먼저 들어온 놈이 먼저 나간다.



코드

public struct Queue<T> {
  fileprivate var array = [T]()

  public var isEmpty: Bool {
    return array.isEmpty
  }
  
  public var count: Int {
    return array.count
  }

  public mutating func enqueue(_ element: T) {
    array.append(element)
  }
  
  public mutating func dequeue() -> T? {
    if isEmpty {
      return nil
    } else {
      return array.removeFirst()
    }
  }
  
  public var front: T? {
    return array.first
  }
}

시간복잡도

enqueue는 O(1)O(1)
dequeue 는 O(N)O(N)

참고자료

profile
오뜨 삽질 🔨 블로그

0개의 댓글