• 自定义实现栈的功能


    栈的定义:栈是一个数据集合,我们可以吧它理解为是一个只能在一端进行插入或者删除的列表。
    栈的特点:先进后出
    • Stack() 建立一个空的栈对象
    • push() 吧一个元素添加到栈的最顶层
    • pop() 删除栈最顶层的元素,并返回这个元素
    • gettop() 取栈顶元素
    • isEmpty() 判断栈是否为空
    • size() 返回栈中元素的个数
    • peek() 返回最顶层的元素,并不删除它
    class Stack:
        '''模拟栈'''
        def __init__(self):
            self.items = []
    
        def isEmpty(self):
            '''判断是否栈空'''
            return len(self.items) ==0  #返回是布尔值,不成立就返回False,成立就返回True
    
        def push(self,item):
            '''往栈里面添加元素'''
            self.items.append(item)
    
        def pop(self):
            '''删除栈最顶层的元素,并返回'''
            return self.items.pop()
    
        def peek(self):
            '''返回栈顶元素,并不删除它'''
            if not self.isEmpty():
                return self.items[len(self.items)-1]  #返回栈顶元素
    
        def size(self):
            '''返回栈中元素的个数'''
            return len(self.items)
    
    # ==========对自定义栈的使用==================
    s = Stack()
    print(s.isEmpty())  #True
    s.push('one')
    s.push('two')
    print(s.peek())  # two
    s.push('three')
    print(s.size()) # 3
    print(s.isEmpty()) # False
    s.push(111111)
    print(s.pop())
    print(s.pop())
    print(s.size())




  • 相关阅读:
    【转】Quartz Cron 触发器 Cron Expression 的格式
    [转]MYSQL同时LEFT JOIN 多个表一例
    collapse用法
    flavor用法
    horny
    ever since用法
    be headed for用法
    Lemme用法
    scary用法
    feel like用法
  • 原文地址:https://www.cnblogs.com/haiyan123/p/8452784.html
Copyright © 2020-2023  润新知