কম্পিউটার টিউটোরিয়াল

পাইথনে কিউ (Queue) ইমপ্লিমেন্টেশন


যখন পাইথন ব্যবহার করে একটি কিউ ইমপ্লিমেন্ট করা প্রয়োজন হয়, তখন একটি কিউ ক্লাস তৈরি করা হয় এবং উপাদান যোগ ও মুছে ফেলার জন্য মেথডগুলো নির্ধারণ করা হয়। ক্লাসের একটি ইনস্ট্যান্স তৈরি করা হয় এবং ইনস্ট্যান্স ব্যবহার করে এই মেথডগুলো কল করা হয় এবং প্রাসঙ্গিক আউটপুট প্রদর্শিত হয়।

নিচে এর একটি উদাহরণ দেওয়া হলো:

উদাহরণ

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 ')
    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 
Dequeue
Quit
What operation would you perform ? Enqueue 45
Enqueue 
Dequeue
Quit
What operation would you perform ? Enqueue 56
Enqueue 
Dequeue
Quit
What operation would you perform ? Enqueue 89
Enqueue 
Dequeue
Quit
What operation would you perform ? Dequeue
Enqueue 
Dequeue
Quit
What operation would you perform ? Dequeue
Enqueue 
Dequeue
Quit
What operation would you perform ? Quit

ব্যাখ্যা

  • প্রয়োজনীয় অ্যাট্রিবিউটসহ 'Queue_struct' ক্লাস তৈরি করা হয়েছে।

  • এতে একটি 'init' ফাংশন আছে যা খালি লিস্ট তৈরি করতে ব্যবহৃত হয়।

  • 'check_empty' নামে আরেকটি মেথড আছে যা লিস্ট খালি কিনা তা চেক করে।

  • 'enqueue_elem' নামে আরেকটি মেথড নির্ধারণ করা হয়েছে যা খালি লিস্টে উপাদান যোগ করে।

  • 'dequeue_elem' নামে একটি মেথড নির্ধারণ করা হয়েছে, যা লিস্ট থেকে উপাদান ডিলিট করে।

  • 'Queue_struct' ক্লাসের একটি অবজেক্ট তৈরি করা হয়েছে।

  • যে অপারেশনটি করতে হবে তার জন্য ইউজার ইনপুট নেওয়া হয়েছে।

  • ইউজারের পছন্দ অনুযায়ী অপারেশনটি সম্পাদন করা হয়েছে।

  • প্রাসঙ্গিক আউটপুট কনসোলে প্রদর্শিত হয়েছে।


  1. পাইথনে প্রায়োরিটি কিউ বাস্তবায়ন কীভাবে করবেন

  2. পাইথনে Implement strStr() (সাবস্ট্রিং সার্চ)

  3. পাইথন প্রোগ্রামে callable() ফাংশন

  4. পাইথনে রক-পেপার-সিসর গেম ইমপ্লিমেন্টেশন