যখন রিকারশন ব্যবহার করে একটি স্ট্যাক ডেটা স্ট্রাকচার রিভার্স করার প্রয়োজন হয়, তখন একটি 'স্ট্যাক_রিভার্স' পদ্ধতি, মান যোগ করার পদ্ধতি, মান মুছে ফেলা এবং স্ট্যাকের উপাদানগুলি মুদ্রণ করার পদ্ধতিগুলি সংজ্ঞায়িত করা হয়।
নীচে একই -
এর একটি প্রদর্শন রয়েছে৷উদাহরণ
class Stack_structure: def __init__(self): self.items = [] def check_empty(self): return self.items == [] def push_val(self, data): self.items.append(data) def pop_val(self): return self.items.pop() def print_it(self): for data in reversed(self.items): print(data) def insert_bottom(instance, data): if instance.check_empty(): instance.push_val(data) else: deleted_elem = instance.pop_val() insert_bottom(instance, data) instance.push_val(deleted_elem) def stack_reverse(instance): if not instance.check_empty(): deleted_elem = instance.pop_val() stack_reverse(instance) insert_bottom(instance, deleted_elem) my_instance = Stack_structure() data_list = input('Enter the elements to add to the stack: ').split() for data in data_list: my_instance.push_val(int(data)) print('The reversed stack is:') my_instance.print_it() stack_reverse(my_instance) print('The stack is:') my_instance.print_it()
আউটপুট
Enter the elements to add to the stack: 23 56 73 81 8 9 0 The reversed stack is: 0 9 8 81 73 56 23 The stack is: 23 56 73 81 8 9 0
ব্যাখ্যা
-
একটি 'স্ট্যাক_স্ট্রাকচার' ক্লাস তৈরি করা হয়েছে যা একটি খালি তালিকা শুরু করে।
-
একটি স্ট্যাক খালি আছে কিনা তা দেখার জন্য একটি 'check_empty' পদ্ধতি সংজ্ঞায়িত করা হয়।
-
'push_val' নামে আরেকটি পদ্ধতি সংজ্ঞায়িত করা হয়েছে যা স্ট্যাকে উপাদান যোগ করে।
-
'pop_val' নামে আরেকটি পদ্ধতি সংজ্ঞায়িত করা হয়েছে যা স্ট্যাক থেকে উপাদান মুছে দেয়।
-
'print_it' নামের একটি পদ্ধতি সংজ্ঞায়িত করা হয়েছে যা স্ট্যাকের উপাদানগুলিকে প্রিন্ট করতে সাহায্য করে।
-
'insert_bottom' নামের একটি পদ্ধতি সংজ্ঞায়িত করা হয়েছে, যা ডিফল্টভাবে শীর্ষে যোগ করার পরিবর্তে স্ট্যাকের নীচে উপাদান যোগ করে।
-
'stack_reverse' নামে আরেকটি পদ্ধতি সংজ্ঞায়িত করা হয়েছে, যা একটি প্রদত্ত স্ট্যাকের বিপরীতে সাহায্য করে।
-
এই 'স্ট্যাক_স্ট্রাকচার'-এর একটি উদাহরণ সংজ্ঞায়িত করা হয়েছে।
-
স্ট্যাকের উপাদানগুলি ব্যবহারকারীর কাছ থেকে নেওয়া হয়৷
৷ -
এটি পুনরাবৃত্ত করা হয়, এবং স্ট্যাকের মান যোগ করার এবং কনসোলে এটি মুদ্রণ করার জন্য পদ্ধতিগুলিকে বলা হয়৷
-
এখন, এই তালিকায় 'stack_reverse' বলা হয়৷
৷ -
কনসোলে বিপরীত স্ট্যাক প্রদর্শন করতে 'print_it' বলা হয়।