본문 바로가기
Algorithm/문제풀이_백준

[Swift][Qeque] 백준 10845번 (큐)

by Joahnee 2021. 8. 31.

요구능력 : 

 

코드설명 : 

 

큐를 구현하였다.

 

후기 :  학교에서 자료구조시간에 배운적이 있어서 무난히 풀이했다.

var queue: [Int] = []

func push(_ n : Int) {
    queue.append(n)
}

func pop() -> Int {
    if size() == 0 {
        return -1
    }
    else {
        return queue.removeFirst()
    }
}

func size() -> Int {
    return queue.count
}

func empty() -> Int {
    return queue.isEmpty ? 1 : 0
}

func front() -> Int {
    return queue.first ?? -1
}

func back() -> Int {
    return queue.last ?? -1
}

let n = Int(readLine()!)!

for _ in 1...n {
    let a = readLine()!.split(separator: " ")
    switch String(a[0]) {
    case "push":
        push(Int(a[1])!)
    case "pop":
        print(pop())
    case "size":
        print(size())
    case "empty":
        print(empty())
    case "front":
        print(front())
    case "back":
        print(back())
    default:
        break
    }
}

댓글