কম্পিউটার

পাইথন প্রোগ্রাম লিঙ্ক করা তালিকা ব্যবহার করে সারি ডেটা স্ট্রাকচার বাস্তবায়ন করতে


যখন একটি লিঙ্ক করা তালিকা ব্যবহার করে একটি সারি ডেটা স্ট্রাকচার প্রয়োগ করার প্রয়োজন হয়, লিঙ্ক করা তালিকায় উপাদানগুলি যোগ করার (সারিবদ্ধ অপারেশন) একটি পদ্ধতি এবং লিঙ্কযুক্ত তালিকার উপাদানগুলিকে মুছে ফেলার (ডিকিউ অপারেশন) একটি পদ্ধতি সংজ্ঞায়িত করা হয়৷

নীচে একই −

এর জন্য একটি প্রদর্শন রয়েছে৷

উদাহরণ

ক্লাস নোড:def __init__(self, data):self.data =data self.next =Noneclass Queue_structure:def __init__(self):self.head =None self.last =None def enqueue_operation(self, data):if self.last is None:self.head =Node(data) self.last =self.head else:self.last.next =Node(data) self.last =self.last.next def dequeue_operation(self):if self.head is None:return any other:val_returned =self.head.data self.head =self.head.next return val_returnedmy_instance =Queue_structure()while True:print('enqueue ') print('dequeue') print('quit') my_input =input('আপনি কোন অপারেশন করতে চান?').split() অপারেশন =my_input[0].strip().lower() if operation =='enqueue':my_instance.enqueue_operation (int(my_input[1])) elif অপারেশন =='dequeue':dequeued =my_instance.dequeue_operation() dequeued হলে None:print('The queue) খালি আছে।') else:print('মুছে ফেলা উপাদান হল :', int(dequeued)) elif অপারেশন =='ছাড়ুন':বিরতি

আউটপুট

 enqueue  dequeuequit আপনি কোন অপারেশন করতে চান? enqueue 45enqueue dequeuequit আপনি কোন অপারেশন করতে চান? enqueue 12enqueue dequeuequit আপনি কোন অপারেশন করতে চান? dequeue মুছে ফেলা উপাদান হল :45enqueue dequeuequit আপনি কোন অপারেশন করতে চান? প্রস্থান করুন 

ব্যাখ্যা

  • 'নোড' ক্লাস তৈরি করা হয়েছে।

  • প্রয়োজনীয় গুণাবলী সহ আরেকটি 'কিউ_স্ট্রাকচার' ক্লাস তৈরি করা হয়েছে।

  • এটির একটি 'init' ফাংশন রয়েছে যা প্রথম উপাদানটি শুরু করতে ব্যবহৃত হয়, যেমন 'হেড' থেকে 'কোনটি নয়'।

  • enqueue_operation’ নামের একটি পদ্ধতি সংজ্ঞায়িত করা হয়েছে, যা সারিতে একটি মান যোগ করতে সাহায্য করে।

  • 'dequeue_operation' নামে আরেকটি পদ্ধতি সংজ্ঞায়িত করা হয়েছে, যা সারি থেকে একটি মান মুছে ফেলতে সাহায্য করে এবং মুছে ফেলা মান ফিরিয়ে দেয়।

  • 'কিউ_স্ট্রাকচার'-এর একটি উদাহরণ তৈরি করা হয়েছে।

  • তিনটি বিকল্প দেওয়া হয়েছে, যেমন 'এনকিউ', 'ডিকিউ' এবং 'ক্যুইট'৷

  • 'এনকিউ' বিকল্পটি স্ট্যাকের একটি নির্দিষ্ট মান যোগ করে।

  • 'ডিকিউ' বিকল্পটি সারি থেকে উপাদানটিকে মুছে দেয়।

  • 'প্রস্থান' বিকল্পটি লুপ থেকে বেরিয়ে আসে।

  • ব্যবহারকারীর ইনপুট/পছন্দের উপর ভিত্তি করে, সংশ্লিষ্ট ক্রিয়াকলাপগুলি সম্পাদিত হয়৷

  • এই আউটপুট কনসোলে প্রদর্শিত হয়৷


  1. পাইথন সার্কুলার লিঙ্কড লিস্ট প্রোগ্রাম

  2. একটি দ্বিগুণ লিঙ্কযুক্ত তালিকায় একটি উপাদান অনুসন্ধান করতে পাইথন প্রোগ্রাম

  3. পাইথন প্রোগ্রাম N নোড দ্বারা দ্বিগুণ লিঙ্কযুক্ত তালিকা ঘোরানোর জন্য

  4. বৃত্তাকার লিঙ্কযুক্ত তালিকায় একটি উপাদান অনুসন্ধান করতে পাইথন প্রোগ্রাম