কম্পিউটার

পাইথন প্রোগ্রাম দ্বিপদী বৃক্ষ বাস্তবায়নের জন্য


যখন পাইথনে একটি দ্বিপদ গাছ বাস্তবায়নের প্রয়োজন হয়, তখন অবজেক্ট ওরিয়েন্টেড পদ্ধতি ব্যবহার করা হয়। এখানে, একটি শ্রেণী সংজ্ঞায়িত করা হয়, এবং গুণাবলী সংজ্ঞায়িত করা হয়। ফাংশন নির্দিষ্ট অপারেশন সঞ্চালন যে শ্রেণীর মধ্যে সংজ্ঞায়িত করা হয়. ক্লাসের একটি উদাহরণ তৈরি করা হয়, এবং ফাংশনগুলি ক্যালকুলেটর ক্রিয়াকলাপ সম্পাদন করতে ব্যবহৃত হয়৷

নীচে একই −

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

উদাহরণ

class binomial_tree:
   def __init__(self, key):
      self.key = key
      self.children = []
      self.order = 0
   def add_at_end(self, t):
      self.children.append(t)
      self.order = self.order + 1
my_tree = []
print('Menu')
print('create <key>')
print('combine <index1> <index2>')
print('exit')
while True:
   option = input('What do you wish like to do? ').split()
   operation = option[0].strip().lower()
   if operation == 'create':
      key = int(option[1])
      b_tree = binomial_tree(key)
      my_tree.append(b_tree)
      print('Binomial tree has been created.')
   elif operation == 'combine':
      index_1 = int(option[1])
      index_2 = int(option[2])
      if my_tree[index_1].order == my_tree[index_2].order:
         my_tree[index_1].add_at_end(my_tree[index_2])
         del my_tree[index_2]
         print('Binomial trees have been combined.')
      else:
         print('Order of trees need to be the same to combine them.')
   elif operation == 'exit':
      print("Exit")
      break
   print('{:>8}{:>12}{:>8}'.format('Index', 'Root key', 'Order'))
   for index, t in enumerate(my_tree):
print('{:8d}{:12d}{:8d}'.format(index, t.key, t.order))

আউটপুট

Menu
create <key>
combine <index1> <index2>
exit
What do you wish like to do? create 7
Binomial tree has been created.
Index Root key Order
0 7 0
What do you wish like to do? create 11
Binomial tree has been created.
Index Root key Order
0 7 0
1 11 0
What do you wish like to do? create 4
Binomial tree has been created.
Index Root key Order
   0    7    0
   1    11    0
   2    4    0
What do you wish like to do? combine 0 1
Binomial trees have been combined.
Index Root key Order
   0    7    1
   1    4    0
What do you wish like to do? exit
Exit

ব্যাখ্যা

  • ‘দ্বিপদ_বৃক্ষ’ নামের একটি শ্রেণী সংজ্ঞায়িত করা হয়েছে।
  • এতে গাছের শেষে উপাদান যোগ করার একটি পদ্ধতি রয়েছে।
  • একটি খালি তালিকা তৈরি করা হয়েছে।
  • বিকল্পগুলির উপর ভিত্তি করে, ব্যবহারকারী একটি বিকল্প বেছে নেয়।
  • যদি তারা একটি কী তৈরি করতে পছন্দ করে, ক্লাসের একটি উদাহরণ তৈরি করা হয় এবং একটি দ্বিপদ গাছ তৈরি করা হয়৷
  • সূচী, মূল মান এবং ক্রমও গণনা করা হয়।
  • যদি সূচকগুলি একত্রিত করার প্রয়োজন হয়, অন্য একটি বিকল্প বেছে নেওয়া হয়, এবং নোডগুলির সূচকের মানগুলিকে একত্রিত করতে হবে তাও উল্লেখ করা হয়৷
  • এটি ডেটা একত্রিত করে, এবং এটি প্রদর্শন করে।

  1. AVL ট্রি বাস্তবায়নের জন্য C++ প্রোগ্রাম

  2. একটি তালিকায় স্ট্রিং খুঁজে পেতে পাইথন প্রোগ্রাম

  3. পাইথনে একটি এন-আরি গাছের একটি অনুলিপি তৈরি করার প্রোগ্রাম

  4. একটি প্রদত্ত এক্সপ্রেশনের একটি এক্সপ্রেশন ট্রি তৈরি করতে পাইথন প্রোগ্রাম