दो समुच्चयों का प्रतिच्छेदन केवल उन तत्वों से बनता है जो दोनों समुच्चयों में उभयनिष्ठ हैं। फ़ंक्शन द्वारा कॉपी किए गए तत्व हमेशा पहले सेट से उसी क्रम में आते हैं। दोनों सेटों के तत्वों को पहले ही ऑर्डर कर दिया जाएगा।
सामान्य सेट ऑपरेशन हैं -
- संघ सेट करें
- चौराहे सेट करें
- सममित सेट अंतर या अनन्य-या
- अंतर या घटाव सेट करें
एल्गोरिदम
Begin Declare set vector v and iterator st. Initialize st = set_intersection (set1, set1 + n, set2, set2 +n, v.begin())) Print the intersection between two sets. End.
उदाहरण कोड
#include <iostream> #include <algorithm> #include <vector> using namespace std; int main () { int set1[] = {5,6,7,8,9,10}; int set2[] = {1,2,3,4,6,7}; vector<int> v(10); vector<int>::iterator st; sort (set1, set1 + 6); sort (set2, set2 + 6); st = set_intersection (set1, set1 + 6, set2, set2 + 6, v.begin()); v.resize(st - v.begin()); cout << "The intersection between the two set has " << (v.size()) << " elements: "<<endl; for (st = v.begin(); st != v.end(); ++st) cout<< *st<<" "; cout <<endl; return 0; }
आउटपुट
The intersection between the two set has 2 elements: 6 7