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

পাইথন প্রোগ্রাম: অ্যারের জন্য রিভার্সাল অ্যালগরিদম (Array Rotation)

একটি রোটেটেড অ্যাকে রিভার্স করতে একটি মেথড সংজ্ঞায়িত করা হয়, যা লিস্টের মাধ্যমে ইটারেট করে এবং লিস্ট রিভার্স করে। আরেকটি মেথড সংজ্ঞায়িত করা হয়, যা লিস্ট রোটেট করে, আরেকটি মেথড সংজ্ঞায়িত করা হয় যা লিস্ট ডিসপ্লে করে। একটি সিম্পল লুপ এবং ইন্ডেক্সিং ব্যবহার করে এটি অর্জন করা হয়।

নিচে ডেমোстран্স্ট্রেশন দেওয়া হলো:

উদাহরণ

def reverse_list(my_list, begin, end):
    while begin < end:
        temp = my_list[begin]
        my_list[begin] = my_list[end]
        my_list[end] = temp
        begin += 1
        end = end - 1

def left_rotate(my_list, to_rotate):
    n = len(my_list)
    reverse_list(my_list, 0, to_rotate - 1)
    reverse_list(my_list, to_rotate, n - 1)
    reverse_list(my_list, 0, n - 1)

def print_it(my_list):
    for i in range(0, len(my_list)):
        print(my_list[i])

my_list = [34, 42, 56, 78, 9, 0, 23]
print("The list is :")
print(my_list)
print("The left_rotate method is being called")
left_rotate(my_list, 3)
print("The list after rotation is : ")
print_it(my_list)

আউটপুট

The list is : [34, 42, 56, 78, 9, 0, 23]
The left_rotate method is being called
The list after rotation is : 78 9 0 23 34 42 56

ব্যাখ্যা

  • 'reverse_list' নামে একটি মেথড সংজ্ঞায়িত করা হয়েছে, যা দেওয়া লিস্ট রিভার্স করে।
  • 'rotate_list' নামে আরেকটি মেথড সংজ্ঞায়িত করা হয়েছে, যা একটি নির্দিষ্ট পিভট ভ্যালুর ভিত্তিতে লিস্ট রোটেট করে।
  • 'print_it' নামে আরেকটি মেথড সংজ্ঞায়িত করা হয়েছে, যা লিস্ট কনসোলে প্রিন্ট করে।
  • একটি লিস্ট সংজ্ঞায়িত করা হয়েছে, এবং কনসোলে ডিসপ্লে করা হয়েছে।
  • 'left_rotate' মেথডটি এই লিস্টে কল করা হয়েছে, এবং রোটেশন ও রিভার্সালের পর এলিমেন্টগুলো কনসোলে ডিসপ্লে করা হয়েছে।
  1. কাউন্টিং সর্টের পাইথন প্রোগ্রাম

  2. অ্যারে রোটেশনের পাইথন প্রোগ্রাম

  3. পাইথনে অ্যারে গুণফলকে n দিয়ে ভাগ করার অবশেষ বের করার প্রোগ্রাম

  4. পাইথন প্রোগ্রাম: ইনসারশন সোর্ট অ্যালগরিদম