zoukankan      html  css  js  c++  java
  • Python 实现一个栈

    # -*- coding=utf-8 -*-
    # 堆栈的top可以预先指定,实时变更,也可以只求stack长度,实时汇报
    
    class Stack(object):
        def __init__(self, size):
            self.stack = []
            self.size = size
            # self.top = len(self.stack)
    
        @property
        def top(self):
            return len(self.stack)
    
        def isfull(self):
            return self.top == self.size
    
        def isempty(self):
            return self.top == 0
    
        def push(self, new_value):
            if not self.isfull():
                self.stack.append(new_value)
                # self.top += 1
            else:
                raise Exception('stack is full')
    
        def pop(self):
            if not self.isempty():
                self.stack.pop()
                # self.top -= 1
            else:
                raise Exception('stack is empty')
    
        def show(self):
            print self.stack
    
    
    s = Stack(10)
    print s.top
    for i in range(10):
        s.push(i)
    
    print s.stack
    print s.top
    # for i in range(11):
    #     s.pop()
  • 相关阅读:
    HHUOJ 1321
    数据结构应用
    数据结构应用
    数据结构与算法分析
    数据结构与算法分析
    CSS -- 字体样式
    CSS -- 选择器
    CSS
    HTML -- 表单元素2
    HTML -- 表单元素1
  • 原文地址:https://www.cnblogs.com/575dsj/p/9356779.html
Copyright © 2011-2022 走看看