यह C++ प्रोग्राम set_symmetric_difference को लागू करने के लिए है। दो सेट का सिमेट्रिक डिफरेंस उन तत्वों द्वारा बनाया जाता है जो एक सेट में मौजूद होते हैं, लेकिन दूसरे में नहीं।
सामान्य सेट ऑपरेशन हैं:
- Set Union
- Set Intersection
- Symmetric Set Difference या Exclusive-OR
- Set Difference या Subtraction
एल्गोरिदम
Begin
सेट वेक्टर v और इटरेटर st घोषित करें।
st = set_symmetric_difference(set1, set1 + n, set2, set2 + n, v.begin()) इनिशियलाइज़ करें।
दो सेट के सिमेट्रिक डिफरेंस के बाद प्राप्त तत्वों को प्रिंट करें।
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_symmetric_difference(set1, set1 + 6, set2, set2 + 6, v.begin());
v.resize(st - v.begin());
cout << "The symmetric difference between the sets has " << (v.size()) << " elements: " << endl;
for (st = v.begin(); st != v.end(); ++st)
cout << *st << " ";
cout << endl;
return 0;
}
आउटपुट
The symmetric difference between the sets has 8 elements: 1 2 3 4 5 8 9 10