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

বোগোসর্ট / পারমিউটেশন সর্টের পাইথন প্রোগ্রাম


এই আর্টিকেলে আমরা নিচের সমস্যা সমাধানের কথা শিখব।

সমস্যা: একটি অ্যারে দেওয়া আছে, আমাদের পারমিউটেশন সর্টের কনসেপ্ট ব্যবহার করে এটি সর্ট করতে হবে।

বোগোসর্ট যাকে পারমিউটেশন সর্টও বলা হয়, এটি জেনারেট-এন্ড-টেস্ট প্যারাডাইমের ওপর বেসড।

চলুন নিচের ইমপ্লিমেন্টেশনে সমাধানটি পর্যবেক্ষণ করি।

উদাহরণ

# র‍্যান্ডম মডিউল
import random

# সর্ট
def bogoSort(a):
    n = len(a)
    while (is_sorted(a) == False):
        shuffle(a)

# চেক
def is_sorted(a):
    n = len(a)
    for i in range(0, n-1):
        if (a[i] > a[i+1]):
            return False
    return True

# পারমিউটেশন
def shuffle(a):
    n = len(a)
    for i in range(0, n):
        r = random.randint(0, n-1)
        a[i], a[r] = a[r], a[i]

# মেইন
a = [1, 5, 3, 4, 8, 6, 3, 4, 5]
bogoSort(a)
print("Sorted array :")
for i in range(len(a)):
    print(a[i], end=" ")

আউটপুট

Sorted array is : 1 3 3 4 4 5 5 6 8

বোগোসর্ট / পারমিউটেশন সর্টের পাইথন প্রোগ্রাম

সभी ভেরিয়েবল লোকাল স্কোপে ঘোষণা করা হয়েছে এবং তাদের রেফারেন্স উপরের চিত্রে দেখা যাচ্ছে।

উপসংহার

এই আর্টিকেলে আমরা শিখেছি কিভাবে বোগোসর্ট বা পারমিউটেশন সর্টের পাইথন প্রোগ্রাম লিখতে হয়।

  1. পাইথনে সিলেকশন সর্ট (Selection Sort)

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

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

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