• 元素返回[Python]python算法入门 栈(stack)


    工作之余抽点时间出来写写博文,希望对新接触的朋友有帮助。今天在这里和大家一起学习一下元素返回

        读书笔记

        ref:http://interactivepython.org/courselib/static/pythonds/BasicDS/stacks.html

        Stack : LIFO last-in first-out

        活生中的例子: 放书,浏览器录记等

        stack常通的操纵:

        Stack() 立建一个空的栈象对

        push() 把一个元素添加到栈的最顶层

        pop()

        删除栈最顶层的元素,并返回这个元素

        peek()

        返回最顶层的元素,其实不删除它

        isEmpty()

        判断栈是不是为空

        size()

        返回栈中元素的个数

        简略案例以及操纵结果:

    Stack Operation	          Stack Contents     Return Value
    	s.isEmpty()	    []	               True
    	s.push(4)	    [4]	 
    	s.push('dog')	    [4,'dog']	 
    	s.peek()	    [4,'dog']	       'dog'
    	s.push(True)	    [4,'dog',True]	 
    	s.size()	    [4,'dog',True]	    3
    	s.isEmpty()	    [4,'dog',True]	    False
    	s.push(8.4)	    [4,'dog',True,8.4]	 
    	s.pop()	            [4,'dog',True]	    8.4
    	s.pop()	            [4,'dog']	        True
    	s.size()	    [4,'dog']	        2
        每日一道理
    “上下五千年,龙的看火不灭;古有愚公志,而今从头越…… ”站在新世纪的门槛上,我们的追求就是让祖国灿烂的喜悦飞扬在美好的明天……

        这里用使python的list象对模拟栈的实现:

    #coding:utf8
    class Stack:
        """模拟栈"""
        def __init__(self):
            self.items = []
            
        def isEmpty(self):
            return len(self.items)==0 
        
        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())
    s.push(4)
    s.push('dog')
    print(s.peek())
    s.push(True)
    print(s.size())
    print(s.isEmpty())
    s.push(8.4)
    print(s.pop())
    print(s.pop())
    print(s.size())

    文章结束给大家分享下程序员的一些笑话语录: 不会,Intel会维持高利润,也会维持竞争局面,国外的竞争不是打死对方的那种。你看日本有尼康,佳能,索尼,都做相机,大家都过得很滋润。别看一堆厂,其实真正控制的是后面的那几个财团——有些竞争对手,后面其实是一家人。

  • 相关阅读:
    python数字图像处理(13):基本形态学滤波
    python数字图像处理(12):基本图形的绘制
    python数字图像处理(11):图像自动阈值分割
    python数字图像处理(10):图像简单滤波
    python数字图像处理(9):直方图与均衡化
    python数字图像处理(8):对比度与亮度调整
    python数字图像处理(7):图像的形变与缩放
    android --- api json数据
    android -------- Hawk数据库
    android -------- 沉浸式状态栏和沉浸式导航栏(ImmersionBar)
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3069684.html
Copyright © 2020-2023  润新知