Python实现队列的方法示例小结【数组,链表】
本文实例讲述了Python实现队列的方法。分享给大家供大家参考,具体如下:
Python实现队列
队列(FIFO),添加元素在队列尾,删除元素在队列头操作
- 列表实现队列:利用python列表方法
代码如下:
#列表实现队列 classlistQueue(object): def__init__(self): self.items=[] defis_empty(self): returnself.items==None defsize(self): returnlen(self.items) #入队 defenqueue(self,value): returnself.items.append(value) #出队 defdequeue(self): ifself.is_empty(): raiseException("queueisempty!") returnself.items.pop(0)
- 链表实现队列:
队列的链表实现中,队列的入队(enqueue)操作类似于链表在表尾添加元素;队列的出队(dequeue)操作类似于在链表头部删除元素
队列初始化中,定义两个特殊节点,队列头(head)和队列尾(tail),方便进行操作
代码如下:
#链表实现队列 classlinkedQueue(object): classNode(object): def__init__(self,value=None): self.value=value self.next=None def__init__(self): self.head=None self.tail=None #self.head.next=self.tail self.length=0 defis_empty(self): returnself.length==0 defsize(self): returnself.length defenqueue(self,value): node=self.Node(value) ifself.is_empty(): self.head=node else: self.tail.next=node self.tail=node self.length+=1 defdequeue(self): ifself.is_empty(): raiseException("queueisempty!") item=self.head.value self.head=self.head.next self.length-=1 print("出队列元素为:",item) returnitem link=linkedQueue() link.enqueue(1) link.enqueue(2) link.enqueue(3) link.enqueue(4) print("队列长度为:",link.size()) link.dequeue() link.dequeue()
运行结果:
队列长度为:4
出队列元素为:1
出队列元素为:2
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python加密解密算法与技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。