数据结构

2018-09-26  本文已影响15人  lczalh

用数组实现栈

class Stack {
    var stack: [AnyObject]
    var isEmpty: Bool { return stack.isEmpty }
    var peek: AnyObject? { return stack.last }
    var count: Int { return stack.count }
    
    init() {
        stack = [AnyObject]()
    }

    func push(object: AnyObject) {
        stack.append(object)
    }

    func pop() -> AnyObject? {
        if (!isEmpty) {
            return stack.removeLast()
        } else {
            return nil
        }
    }
}

let stack = Stack()

stack.push(object: "123" as AnyObject)
stack.push(object: 123 as AnyObject)
stack.push(object: 43242 as AnyObject)

print(stack.count)

stack.pop()
stack.peek
stack.pop()
stack.peek
stack.pop()
stack.peek
print(stack.count)
上一篇 下一篇

猜你喜欢

热点阅读