Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में STL में pair का उपयोग करके दूसरी सरणी के अनुसार सरणी को सॉर्ट करना


मान लीजिए हमारे पास दो अलग-अलग सरणियां हैं। हमें C++ STL pair क्लास का उपयोग करके दूसरी सरणी के आधार पर एक सरणी को सॉर्ट करना है। मान लीजिए दो सरणियां A1 = [2, 1, 5, 4, 9, 3, 6, 7, 10, 8], और दूसरी सरणी A2 = [A, B, C, D, E, F, G, H, I, J] जैसी हैं, आउटपुट ऐसा होगा: A1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], A2 = [B, A, F, D, C, G, H, J, E, I]

यहां हम C++ STL के pairs का उपयोग कर रहे हैं। Pair एक तत्व A1 से और दूसरा तत्व A2 लेकर बनाया जाता है। फिर बस सॉर्टिंग फंक्शन का उपयोग करें। एक बात ध्यान में रखनी है कि pair में पहला तत्व वह सरणी बनाना चाहिए, जिसके अनुसार सॉर्टिंग की जाती है।

उदाहरण

#include <iostream> #include <algorithm> #include <map> using namespace std; template <class T> void display(T arr[], int n) {    for (int i = 0; i < n; i++)    cout << arr[i] << " "; } void sortUsingSecondArr(int A1[], char A2[], int n){    pair<int, char> pair_arr[n];    for (int i = 0; i < n; i++) {       pair_arr[i].first = A1[i];       pair_arr[i].second = A2[i];    }    sort(pair_arr, pair_arr + n);    for (int i = 0; i < n; i++) {       A1[i] = pair_arr[i].first;       A2[i] = pair_arr[i].second;    } } int main() {    int n = 10;    int A1[] = {2, 1, 5, 4, 9, 3, 6, 7, 10, 8};    char A2[] = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'};    cout << "Before Sorting: "<<endl;    cout << "First Array : "; display(A1, n);    cout << "\nSecond Array: "; display(A2, n);    sortUsingSecondArr(A1, A2, n);    cout << "\n\nAfter Sorting: "<<endl;    cout << "First Array : "; display(A1, n);    cout << "\nSecond Array: "; display(A2, n); }

आउटपुट

Before Sorting: First Array : 2 1 5 4 9 3 6 7 10 8 Second Array: A B C D E F G H I J After Sorting: First Array : 1 2 3 4 5 6 7 8 9 10 Second Array: B A F D C G H J E I

  1. - C++ में केवल सरणी तत्वों का उपयोग करके सरणी को समान बनाना

    इस समस्या में, हमें n तत्वों की एक सरणी दी गई है। हमारा कार्य सरणी के तत्वों का उपयोग करके सरणी को समान बनाने के लिए आवश्यक ऑपरेशन्स की संख्या गिनने के लिए एक प्रोग्राम बनाना है। हमें जोड़ या घटाव ऑपरेशन्स की संख्या गिननी होगी जो सरणी के सभी तत्वों को समान बनाने के लिए किए जाएंगे। उदाहरण से समझते

  1. - C++ में 1-D सरणी का उपयोग करके 2-D सरणी का अनुकरण

    इस समस्या में, हम 2-D सरणी को 1-D सरणी में बदलने को समझेंगे। हम देखेंगे कि 2-D सरणी के तत्वों को 1-D सरणी में कैसे संग्रहीत किया जाए। यहां, 1-D सरणी का आकार 2-D सरणी में कुल तत्वों की संख्या के बराबर होता है जो n*m है। प्रोग्रामिंग में 2-D सरणी को 1-D सरणी में संग्रहीत करने के दो तरीके हैं: रो म

  1. C++ में STL का उपयोग करके जांचें कि क्या सरणी पैलिंड्रोम है या नहीं C++ में STL का उपयोग करके जांचें कि क्या सरणी पैलिंड्रोम है या नहीं

    n पूर्णांकों की एक सरणी arr[n] दी गई है, कार्य यह जांचना है कि क्या सरणी एक पैलिंड्रोम है या नहीं। हमें C++ में STL (स्टैंडर्ड टेम्पलेट लाइब्रेरी) का उपयोग करके यह कार्य करना है। C++ में STL (Standard Template Library) की एक विशेषता है, यह C++ टेम्पलेट कक्षाओं का एक समूह है जिसका उपयोग डेटा संरचना