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

C++ में दो सूचियों के सामान्य तत्वों के लिए न्यूनतम अनुक्रमणिका योग

मान लीजिए कि दो व्यक्ति अलग-अलग शहरों को चुनना चाहते हैं, उन्होंने शहरों को अलग-अलग सूची में सूचीबद्ध किया है, हमें आम विकल्पों को खोजने में मदद करनी है। इसलिए हमें उन शहरों को खोजने की जरूरत है, जो उन दोनों द्वारा चिह्नित हैं।

यह ऑपरेशन सेट चौराहे की संपत्ति के समान है, हम सेट के रूप में दो सूचियां लेंगे, फिर सामान्य तत्वों को प्राप्त करने के लिए सेट चौराहे का प्रदर्शन करेंगे।

उदाहरण

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
vector<string> commonInterest(string set1[], int n1, string set2[], int n2) {
   vector<string> v(min(n1, n2));
   vector<string>::iterator it;
   // Sorting both the list
   sort(set1, set1 + n1);
   sort(set2, set2 + n2);
   it = set_intersection(set1, set1 + n1, set2, set2 + n2,
   v.begin());
   return v;
}
int main() {
   string first[] = { "Kolkata", "Hyderabad", "Chennai", "Delhi" };
   int n1 = sizeof(first) / sizeof(first[0]);
   string second[] = { "Mumbai", "Kolkata", "Durgapur", "Delhi" };
   int n2 = sizeof(second) / sizeof(second[0]);
   vector<string> v = commonInterest(first, n1, second, n2);
   cout << "Common cities: ";
   for (int i = 0; i < v.size(); i++)
      cout << ' ' << v[i];
   cout << endl;
}

आउटपुट

Common cities: Delhi Kolkata

  1. C++ में वर्ग मैट्रिक्स के दो विकर्णों में पंक्ति-वार सामान्य तत्व

    इनपुट के रूप में 2D वर्ग मैट्रिक्स दिया गया है। लक्ष्य उन तत्वों को खोजना है जो इसके प्राथमिक और द्वितीयक विकर्णों दोनों में समान हैं। यदि इनपुट मैट्रिक्स है 1 2 3 2 2 4 1 4 7 तब इसका प्राथमिक विकर्ण 1 2 7 है और द्वितीयक विकर्ण 3 2 1 है। सामान्य तत्व 2 है। दोनों में कम से कम एक समान तत्व हमेशा रहे

  1. C++ में दो लिंक्ड सूचियों का प्रतिच्छेदन

    एक लिंक्ड सूची एक रैखिक डेटा संरचना है जिसमें प्रत्येक नोड में दो ब्लॉक होते हैं जैसे कि एक ब्लॉक में नोड का मान या डेटा होता है और दूसरे ब्लॉक में अगले फ़ील्ड का पता होता है। आइए मान लें कि हमारे पास एक लिंक्ड सूची है जैसे कि प्रत्येक नोड में एक यादृच्छिक सूचक होता है जो सूची में अन्य नोड्स को इंग

  1. दो योग IV - इनपुट C++ में एक BST है

    मान लीजिए हमारे पास एक बाइनरी सर्च ट्री और एक लक्ष्य मान है; हमें यह जांचना होगा कि क्या बीएसटी में दो तत्व मौजूद हैं जैसे कि उनका योग दिए गए लक्ष्य के बराबर है या नहीं। तो, अगर इनपुट पसंद है तो आउटपुट ट्रू होगा। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - सरणी को परिभाषित करें v एक