বিভিন্ন ক্রমানুসারে আপডেটগুলি কীভাবে উপস্থিত হতে পারে তার উপস্থাপনা হল বেশ কয়েকটি অবজেক্টের পারমুটেশন। কিন্তু কখনও কখনও আমাদের প্রদত্ত বস্তুর সিরিজে দুটি বস্তু থাকতে পারে যা অভিন্ন। সেক্ষেত্রে দুটি ক্রম সমান হয়ে যাবে। এই প্রবন্ধে দেখা যাবে কিভাবে বস্তুর একটি প্রদত্ত তালিকা থেকে শুধুমাত্র অনন্য ক্রমগুলিকে উপস্থাপন করা যায়৷
৷মডিউল itertools এর একটি পদ্ধতি আছে যার নাম পারমুটেশন যা আমাদের এটি অর্জন করতে সাহায্য করে। অনন্য পারমুটেশন পেতে আমরা সেট পদ্ধতির সাহায্য নিই যা শুধুমাত্র স্বতন্ত্র উপাদানগুলিকে সঞ্চয় করে। কিন্তু তার আগে আমরা সাজানো পদ্ধতি ব্যবহার করে সাজানো ক্রমে উপাদানগুলো পাই।
নীচের প্রোগ্রামে K হল সর্বাধিক সংখ্যক অনন্য উপাদান যা আমরা সম্পূর্ণ সম্ভাব্য অনন্য পারমুটেশনের মধ্যে প্রদর্শন করতে চাই। কিছুক্ষণ লুপ ব্যবহার করে আমরা চূড়ান্ত তালিকায় অনন্য উপাদান যোগ করতে থাকি শুধুমাত্র যদি এটি ইতিমধ্যেই যোগ করা না থাকে তবেই আমরা প্রদর্শন করতে চাই। সেট।
উদাহরণ
from itertools import permutations def permutation_value(str, k): s = sorted(list(str)) p = permutations(s) m = 0 set_1 = set() str = '' while m < k: str = ''.join(p.__next__()) if str not in set_1: set_1.add(str) print(str) m += 1 str = "xyxxz" i = 12 permutation_value(str, i)
আউটপুট
উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -
xxxyz xxxzy xxyxz xxyzx xxzxy xxzyx xyxxz xyxzx xyzxx xzxxy xzxyx xzyxx