数据结构之 栈 (Python 版)
    -- 利用线性表实现栈

栈的特性: 后进先出

  1.  基于顺序表实现栈

     1 class SStack():
     2
     3     '''
     4     基于顺序表 实现的 栈类
     5     '''
     6
     7     def __init__(self):
     8         self._elems = []
     9
    10     def is_empty():
    11         return self._elems == []
    12
    13     def top(self):
    14         if self._elems == [] :
    15             raise StackUnderflow(" in Stack.top . ")
    16         return self._elems[-1]
    17
    18     def push(self,elem):
    19         self._elems.append(elem)
    20
    21     def pop(self):
    22         if self._elems == [] :
    23             raise StackUnderflow(" in Stack.pop .")
    24         return self._elems.pop()

  2. 基于链表技术实现栈
     1 class LStack():
     2
     3     '''
     4     基于链接表技术实现的栈类, 使用 LNode 作为节点
     5     '''
     6
     7     def __init__(self):
     8         self._top = None
     9
    10     def is_empty(self):
    11         return self._top is None
    12
    13     def top(self):
    14         if self._top is None :
    15             raise StackUnderflow(" in LStack.top .")
    16         return self._top.elem
    17
    18     def push(self,elem):
    19         self._top = LNode(elem,self._top)
    20
    21     def pop(slef):
    22         if self._top is None :
    23             raise StackUnderflow(" in Stack.pop . ")
    24         p = self._top
    25         slef._top = p.next
    26         return p.elem

转载于:https://www.cnblogs.com/zlsgh/p/9562136.html

数据结构之 栈 (Python 版)相关推荐

  1. 数据结构与算法python版 MOOC 第三周

    三.基本线性结构 本系列博客基于" (北京大学)数据结构与算法python版"慕课,课程在中国大学慕课和bilibili上均可找到. 1. 内容 定义线性结构 讲解栈的结构结构 栈 ...

  2. mooc数据结构与算法python版期末考试_数据结构与算法Python版-中国大学mooc-试题题目及答案...

    数据结构与算法Python版-中国大学mooc-试题题目及答案 更多相关问题 婴儿出生一两天后就有笑的反应,这种笑的反应属于(). [判断题]填制原始凭证,汉字大写金额数字一律用正楷或草书书写,汉字大 ...

  3. python数据结构算法 北京大学_北京大学公开课《数据结构与算法Python版》

    之前我分享过一个数据结构与算法的课程,很多小伙伴私信我问有没有Python版. 看了一些公开课后,今天特向大家推荐北京大学的这门课程:<数据结构与算法Python版>. 课程概述 很多同学 ...

  4. 数据结构与算法 python版 之 递归三定律

    #数据结构与算法 python版 之 谢尔宾斯基三角形 , 树叉 1.为了向阿西莫夫的"机器人三定律"直径,递归算法也总结出"三定律" 1递归算法必须有一个基本 ...

  5. 数据结构python版 答案,中国大学 MOOC_数据结构与算法Python版_章节测验答案

    中国大学 MOOC_数据结构与算法Python版_章节测验答案 更多相关问题 认识的本质是()A.肯定世界是可知的B.主体对客体的能动反映C.主体对客体的直观反映D.实践是 水灰比是影响混凝土()的主 ...

  6. 数据结构与算法python版 MOOC 第九周

    九.树及算法-上 本系列博客基于" (北京大学)数据结构与算法python版"慕课,课程在中国大学慕课和bilibili上均可找到. 1. 内容 树结构的相关术语 树的表示方法:嵌 ...

  7. mooc数据结构与算法python版期末测验_中国大学数据结构与算法Python版答案_MOOC慕课章节期末答案...

    中国大学数据结构与算法Python版答案_MOOC慕课章节期末答案 更多相关问题 java.lang 包的 Character 类的 isJavaIdentifierStart 方法的功能是用来判断某 ...

  8. mooc数据结构与算法python版第十一周作业_中国大学 MOOC_数据结构与算法Python版_2020最新答案学习指南...

    中国大学 MOOC_数据结构与算法Python版_2020最新答案学习指南 更多相关问题 [判断题]实际集成运放的上限截止频率为无穷大 [多选题]现代城市的发展凸现出与以往不同的动力机制包括 教师在引 ...

  9. 陈斌老师《数据结构与算法Python版》第五周作业——ASCII谢尔宾斯基地毯

    陈斌老师<数据结构与算法Python版>第五周作业--ASCII谢尔宾斯基地毯 题目 思路 程序如下 总结 题目 谢尔宾斯基地毯是形如上图的正方形分形图案,每个地毯可分为等大小的9份,其中 ...

  10. mooc数据结构与算法python版期末测验_中国大学MOOC(慕课)_数据结构与算法Python版_测试题及答案...

    中国大学MOOC(慕课)_数据结构与算法Python版_测试题及答案 更多相关问题 采用fopen()函数打开文件,支持文件读取的参数有: [简答题]简单阐述高分子材料热-机械特征及成型加工的关系,并 ...

最新文章

  1. Python 包安装和 postgresql 的一些问题
  2. mysql8.0远程linux_【Linux】【mysql】mysql8.0开启远程访问及常见问题
  3. 写给师弟师妹的一封信-论在校程序员的学习方向
  4. 还在熬夜憋思路?这12篇最新论文打包送给你 | 本周值得读
  5. HDU 1540 Tunnel Warfare 线段树区间合并
  6. Android-入门学习笔记-使用 CursorLoader 加载数据
  7. Docker技术入门与实战 第二版-学习笔记-2-镜像构建
  8. 拼多多“官宣”iPhone 12:来得刚刚好 下周见!
  9. 阅读gulp源码小结
  10. 使用Confluence如何输出一份结构清晰 可读性高的测试文档?
  11. 树莓派指定python2编译_在树莓派上编译安装ROS2
  12. Taints和Tolerations联用,将pod部署到k8s的master节点
  13. 加载MNIST数据集
  14. ffmpeg利用crop滤镜进行视频裁剪
  15. 多传感器数据融合算法综述
  16. Operation was explicitly assigned to /device:GPU:0 but available devices are [ /job:localhost/repli
  17. 国内linux内核代码贡献率,[图]AMD为Linux内核贡献27.5万行代码 确认Van Gogh APU支持DDR5和VCN3...
  18. 解决西门子ebr设备模块更新报错,EQP_STATEVALUE more than one row
  19. DIV自动填满剩余空间
  20. openpsoe 代码解读(一)

热门文章

  1. 八年程序员被裁了后,打脸上家公司,连斩六个offer
  2. 9个适合web开发人员的CSS工具
  3. D - 区间覆盖问题
  4. php忘记密码啦怎么办,后台账号密码忘记了怎么办.
  5. mysql 取模分区_MySQL分区
  6. linux ibus中文,Ubuntu 14.10系统中IBUS 中文输入法安装的图文教程
  7. 编码速度非常慢_有BUG?MySQL中的 utf8 居然并不是真正的UTF-8编码?
  8. Filter过滤器执行流程
  9. 使用setuptools和cython打包python程序的时候遇到:Microsoft visual c++ 14.0 is required问题解决办法
  10. 算法应用四:【经典算法】易混淆的图像处理总结