【随笔】队列

本文介绍了队列的基本概念,它是一种先进先出(FIFO)的线性表,允许在队尾插入元素,在队头删除元素。队列不允许在中间位置进行操作。文章还展示了使用Python实现队列的代码,包括创建、插入、删除和检查队列状态等操作,并通过实例演示了队列的使用。
摘要由CSDN通过智能技术生成
'''
队列 QUEUE
队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表

队列是一种先进先出的(FIRST IN FIRST OUT)的线性表,允许插入的一端为队尾,允许删除的一端为队头。
队列不允许在中间部位进行操作
       队尾               队头
-----> [An] ... [A3] [A2] [A1]------>

与我们生活中的排队一致,先来先得

队列的实现:
1.顺序表实现
2.链表实现

实现操作:

 - Queue()       创建一个空队列
 - enqueue(item) 向队尾添加一个新的元素item
 - dequeue()	 从队头删除一个元素
 - is_empty()    判断一个队列是否为空
 - size()		 返回队列的大小
 
'''
# coding=utf-8
class Queue(object):
	def __init__(self):
		self.items = []
	
	def is_empty(self):
		return self.items == []
	
	def enqueue(self,item):
		self.items.insert(0,item)
		# self.items.append(item)
	
	def dequeue(self):
		return self.items.pop()
		# return self.items.pop(0)
	
	def size(self):
		return len(self.items)
	
if __name__=="__main__":
	my_queue = Queue()
	my_queue.enqueue("hello")
	my_queue.enqueue("queue")
	my_queue.enqueue("1")
	my_queue.enqueue("2")
	my_queue.enqueue("3")
	print(my_queue.is_empty())
	print(my_queue.size())
	print("*****************")
	print(my_queue.dequeue())
	print(my_queue.dequeue())
	print(my_queue.dequeue())
	print(my_queue.dequeue())
	print(my_queue.dequeue())
	print("*****************")
结果输出:
False
5
*****************
hello
queue
1
2
3
*****************
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值