Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมที่จะใช้คิวใน Python


เมื่อจำเป็นต้องใช้คิวโดยใช้ Python คลาสคิวจะถูกสร้างขึ้นและกำหนดวิธีการเพิ่มและลบองค์ประกอบ มีการสร้างอินสแตนซ์ของคลาส และเรียกใช้เมธอดเหล่านี้โดยใช้อินสแตนซ์และแสดงผลลัพธ์ที่เกี่ยวข้อง

ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -

ตัวอย่าง

class Queue_struct:
   def __init__(self):
      self.items = []

   def check_empty(self):
      return self.items == []

   def enqueue_elem(self, data):
      self.items.append(data)

   def dequeue_elem(self):
      return self.items.pop(0)

my_instance = Queue_struct()
while True:
   print('Enqueue <value>')
   print('Dequeue')
   print('Quit')
   my_input = input('What operation would you perform ? ').split()

   operation = my_input[0].strip().lower()
   if operation == 'Enqueue':
      my_instance.enqueue_elem(int(my_input[1]))
   elif operation == 'Dequeue':
      if my_instance.check_empty():
         print('The queue is empty...')
      else:
         print('The deleted value is : ', my_instance.dequeue_elem())
   elif operation == 'Quit':
      break

ผลลัพธ์

Enqueue <value>
Dequeue
Quit
What operation would you perform ? Enqueue 45
Enqueue <value>
Dequeue
Quit
What operation would you perform ? Enqueue 56
Enqueue <value>
Dequeue
Quit
What operation would you perform ? Enqueue 89
Enqueue <value>
Dequeue
Quit
What operation would you perform ? Dequeue
Enqueue <value>
Dequeue
Quit
What operation would you perform ? Dequeue
Enqueue <value>
Dequeue
Quit
What operation would you perform ? Quit

คำอธิบาย

  • คลาส 'Queue_struct' พร้อมแอตทริบิวต์ที่จำเป็นจะถูกสร้างขึ้น

  • มีฟังก์ชัน 'init' ที่ใช้สร้างรายการว่าง

  • อีกวิธีหนึ่งชื่อ 'check_empty' ที่จะตรวจสอบเพื่อดูว่ารายการว่างเปล่าหรือไม่

  • มีการกำหนดวิธีการอื่นที่ชื่อว่า 'enqueue_elem' ซึ่งเพิ่มองค์ประกอบลงในรายการที่ว่างเปล่า

  • มีการกำหนดวิธีการชื่อ 'dequeue_elem' ซึ่งจะลบองค์ประกอบออกจากรายการ

  • วัตถุของคลาส 'Queue_struct' ถูกสร้างขึ้น

  • ผู้ใช้ป้อนข้อมูลสำหรับการดำเนินการที่จำเป็นต้องดำเนินการ

  • ขึ้นอยู่กับทางเลือกของผู้ใช้ การดำเนินการจะดำเนินการ

  • เอาต์พุตที่เกี่ยวข้องจะแสดงบนคอนโซล