• 数据结构之 栈 (Python 版)


    数据结构之 栈 (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
  • 相关阅读:
    数据加载存储和文件格式
    基本概率分布图的绘制
    pandas处理各类表格数据
    python时间处理
    matplotlib实现数据可视化
    sql学习笔记:表的运算
    sql杂记:一些坑和数据库恢复
    exists关键词和case表达式
    后台工具screen
    SQL函数小记
  • 原文地址:https://www.cnblogs.com/zlsgh/p/9562136.html
Copyright © 2020-2023  润新知