概述
队列是一种线性数据结构,我们从两端访问了我们遵循的元素,并且遵循FIFO(首先是首先)原理。
让我们在一个示例的帮助下,首先理解第一个原理(FIFO),假设我们站在学校的一条集会线上,首先进入大会队列的学生首先从排队排出。
插入元素的侧面称为后部,而删除元素的侧面称为正面。
文章范围
- 在本文中,我们将学习了解我们可以在队列中执行的不同操作。
- 我们还将阅读有关其在Python的实现的不同类型的队列。
- 我们还将阅读有关队列的应用。
介绍
现在,由于我们已经知道队列在第一个(FIFO)原理中遵循,并且在我们的日常生活中被我们广泛使用。
现在让我们阅读有关队列中可以执行的不同操作:
- Enqueue
- Dequeue
- Isempty
- isfull
- peek
- 正面
- 后方
现在让我们详细了解这些操作中的每一个:
顾问:
此操作用于在queue中添加元素。如果在任何条件下,后部索引会划出队列的大小,那么我们可以说队列已满,然后据说处于溢流状态。
执行此操作的时间复杂性为O(1)。
Dequeue:
由于使用者操作用于在队列中插入元素,因此使用dequeue操作来删除队列中的元素。如果后部指向-1,则没有更多要删除的元素,那么我们可以说队列处于下流条件下。
执行此操作的时间复杂性为O(1)。
是空的:
队列中的此操作用于检查队列是否为空。
已满:
通过isfull一词,我们可以理解此操作用于检查队列是否已满。
窥视:
此操作用于查找无需删除的队列的第一个元素的PEEK元素。它返回第一个元素的值而不删除它。
正面:
此操作用于从队列获取第一个元素。执行此操作的时间复杂性为O(1)。
后部:
此操作用于从队列获取最后一个元素。在队列中执行后部操作的时间复杂性为O(1)。
现在,由于我们已经阅读了可以在队列中执行的操作,让我们在Python中查看队列的实现:
在Python中实施队列:
queue1 = []
queue1.append('1')
queue1.append('4')
queue1.append('9')
queue1.append('87')
queue1.append('75')
print("Currently present elements present in the queue are :")
print(queue1)
print("The elements which are dequeued from the queue are ")
print(queue1.pop(0))
print(queue1.pop(0))
print(queue1.pop(0))
print(queue1.pop(0))
print("\nThe present elements present in the queue after removing the elements are :")
print(queue1)
输出
Initial elements which are present in the queue are
['1', '4', '9', '87', '75']
Elements which are dequeued from the queue are
1
4
9
87
The present elements presnent in the queue after removing the elements are :
['75']
在上面的代码中,我们首先在队列中添加了五个元素,然后使用POP操作删除了队列中存在的前四个元素。
在编辑器中运行上述代码以进行更好,清晰的解释。
现在让我们使用Python中的列表查看队列实现:
queue=[]
def Enqueue():
if len(queue)==size:
print("overflow!!Cannot insert more elements")
else:
element=input("Enter the element which u want to insert:")
queue.append(element)
queue.append(element)
print("the above elements are added to the queue")
def dequeue():
if not queue:
print("Cannot delete more elements from the queue , Underflow condition!!!")
else:
removed_element=queue.pop(0)
removed_element=queue.pop(0)
print("The removed element from the queue are!!:",removed_element)
def display():
print(queue)
size=int(input("Enter the size of Queue which u want :"))
while True:
print("Select the Operation of your choices:1.Add elements in the queue 2.Delete elements from the queue 3. Display the current elenents from the queue 4. Exit from the queue ")
choice=int(input())
if choice==1:
Enqueue()
elif choice==2:
dequeue()
elif choice==3:
display()
elif choice==4:
break
else:
print("Invalid Option! enter any other option")
在上述代码中使用Python中的列表中,我们实施了三个操作,这些操作是在队列中出现,Decqueue,DeSeble。我们为每个人创建了单独的功能。
在编辑器中运行代码以提供更好,清晰的解释。
现在让我们可以阅读有关队列类型:
队列类型:
它们主要是Python中的四种队列。它们如下:
- 简单队列
- 圆形队列 li>
- 优先队列
- 双端队列
现在让我们详细阅读它们:
1.简单队列
简单的队列是正常的队列,其中插入和删除元素遵循FIFO(首先是首先)原理。
主要是使用简单队列的缺点,即首先输入的元素,首先要删除,因此,如果我们删除了所有8个元素,只剩下2个元素,则我们的队列有10个元素的队列元素。
2.圆形队列:
在此队列中,最后一个节点连接到队列的第一个元素,该队列解决了简单队列的问题,即如果我们要在开始和空的空间中添加元素,则可以直接添加元素到队列。
3.优先队列
在此中,队列的要素根据优先级排列。优先级的要素根据FIFO(首先是首先)原则排列。
4.然后
在这种类型的队列中,我们获得了一个好处,我们可以从后端或前端插入队列的两侧删除元素。字符串的一个很好的例子是,它的反向与原始相似。
队列在Python中的应用:
队列在真实的词中也使用,就像假设我们站在学校的一条集会线上,首先进入大会队列的学生首先从队列中出来。队列也用于CD播放器。
,也用于著名的社交媒体平台Whatsapp。队列也主要用于调度算法。这是我们在日常生活中使用的几乎没有队列的应用。
结论
- 队列在第一个原则中遵循第一个原则,在我们的日常生活中非常有用,
- 队列用于实现各种CPU调度算法。
- 在本文中,我们研究了队列的不同操作。
- 我们还在本文中阅读了其用途的队列类型。