STL-এ Prev_permutation ব্যবহার করা হয় রেঞ্জের উপাদানগুলিকে [প্রথম, শেষ] পূর্ববর্তী আভিধানিকভাবে ছোট পারমুটেশনে পুনর্বিন্যাস করতে। একটি পারমুটেশন হল প্রতিটি এন! সম্ভাব্য ব্যবস্থা উপাদান নিতে পারে. STL-এ Prev_permutation বাস্তবায়নের জন্য এখানে একটি C++ প্রোগ্রাম রয়েছে।
অ্যালগরিদম
Begin Define one integer array variable elements[]. Get the number of data e from the user. Initialize the array elements[] with e number of data from the keyboard. Sort all the array elements. Reverse the array elements. Do show(elements) //to display the current content of the array while (prev_permutation(elements, elements + e)) End.
উদাহরণ কোড
#include<iostream> #include <algorithm> using namespace std; void show(int a[], int n) { for(int i = 0; i < n; i++) { cout<<a[i]<<" "; } cout<<endl; } int main () { int e, i; cout<<"Enter number of elements to be inserted: "; cin>>e; int elements[e]; for (i = 0; i < e; i++) { cout<<"Enter "<<i + 1<<" element: "; cin>>elements[i]; } sort (elements, elements + e); reverse (elements, elements + e); cout << "The "<<e<<"! possible permutations with "; cout<<e<<" elements: "<<endl; do { show(elements, e); } while (prev_permutation(elements, elements + e)); return 0; }
আউটপুট
Enter number of elements to be inserted: 4 Enter 1 element: 7 Enter 2 element: 6 Enter 3 element: 10 Enter 4 element: 2 The 4! possible permutations with 4 elements: 10 7 6 2 10 7 2 6 10 6 7 2 10 6 2 7 10 2 7 6 10 2 6 7 7 10 6 2 7 10 2 6 7 6 10 2 7 6 2 10 7 2 10 6 7 2 6 10 6 10 7 2 6 10 2 7 6 7 10 2 6 7 2 10 6 2 10 7 6 2 7 10 2 10 7 6 2 10 6 7 2 7 10 6 2 7 6 10 2 6 10 7 2 6 7 10