美文网首页
Swift基础之实现一个栈

Swift基础之实现一个栈

作者: SuAdrenine | 来源:发表于2017-12-24 21:00 被阅读25次

    首先栈是一个遵从“后进先出,先进后出”规则的序列。
    同时还有两个操作:
    入栈操作,将一个元素放入栈中;
    出栈操作,当栈不为空的时候,将栈顶元素(最后一个放入栈的元素)从栈中取出,栈中元素个数减一。

    代码如下:

    struct Stack<Element> {  //使用泛型让栈能存储各种元素
        var items = [Element]()
        mutating func push(_ item: Element) {  //入栈
            items.append(item)
        }
        
        mutating func pop() -> Element?{  //出栈
            if items.count < 1 {
                return nil
            }
            return items.removeLast()
        }
    }
    

    栈的实现还是非常简单的,需要注意的是入栈出栈方法使用了mutating修饰,这是为了改变结构体中的items成员变量,去掉则会有问题。

    相关文章

      网友评论

          本文标题:Swift基础之实现一个栈

          本文链接:https://www.haomeiwen.com/subject/gtahgxtx.html