STL में Prev_permutation का उपयोग [प्रथम, अंतिम] श्रेणी के तत्वों को पिछले लेक्सिकोग्राफ़िक रूप से छोटे क्रमपरिवर्तन में पुनर्व्यवस्थित करने के लिए किया जाता है। एक क्रमपरिवर्तन एन में से प्रत्येक है! संभावित व्यवस्था तत्व ले सकते हैं। एसटीएल में 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