您的位置:首页 > 理论基础 > 数据结构算法

python扩展数据结构—栈和队列

2014-01-29 06:31 549 查看
[align=left]栈:只在表尾进行插入删除的线性表。[/align]

class Stack():       

    def __init__(self):

        self.stack
= []

   

    def empty(self):

        return self.stack
== []

   

    def top(self):

        if self.empty():

            return None

        else:

            return self.stack[-1]

       

    def pop(self):

        if self.empty():

            return None

        else:

            return self.stack.pop(-1)

       

    def push(self,obj):

        self.stack.append(obj)

       

    def length(self):

        return len( self.stack)

队列:在一端进行插入另一端进行删除的线性表。

class Queue():

    def __init__(self):

        self.data
= []

    def empty(self):

        return self.data
== []

    def length(self):

        return len( self.data)

    def head(self):

        if not self.empty():

            return self.data[0]

        else:

            return None

    def enQueue(self,element):

        self.data.append(element)

    def deQueue(self):

        if not self.empty():

            return self.data.pop(0)

        else:

            return None

    def __str__(self):

        return str( self.data)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: