构造stack(python)

class mystack(object):
    # 1.初始化栈
    def __init__(self, size):
        self.size = int(size)
        self.top = -1
        self.stack = [None for i in range(size)]

    # 2.返回元素个数
    def get_count(self):
        return self.top + 1

    # 3.清空栈
    def clear(self):
        self.top = -1

    #4.判断栈空,栈空为TRUE,栈不空为FLASE
    def stack_isnone(self):
        return self.top == -1

    #5.判断栈满
    def stack_isfull(self):
        return self.top == self.size-1

    #6.取栈顶
    def stack_top(self):
        return self.stack[self.top]

    #7.进栈
    def push(self,element):
        if mystack.stack_isfull(self):
            print("栈已满")
        else:
            self.top = self.top + 1
            self.stack[self.top] = element

    # 8.退栈
    def pop(self):
        if mystack.stack_isnone(self):
            print("栈为空")
            return None
        else:
            self.top =  self.top-1
            return self.stack[self.top+1]

猜你喜欢

转载自blog.csdn.net/weixin_42590877/article/details/88357706