นี่คือโปรแกรม c++ เพื่อใช้งาน set_symmetric_difference ความแตกต่างแบบสมมาตรของสองชุดถูกสร้างขึ้นโดยองค์ประกอบที่มีอยู่ในชุดใดชุดหนึ่ง แต่ไม่มีในชุดอื่น
การดำเนินการชุดทั่วไปคือ -
- ตั้งสหภาพ
- กำหนดทางแยก
- ส่วนต่างชุดสมมาตรหรือเอกสิทธิ์-OR
- กำหนดส่วนต่างหรือการลบ
อัลกอริทึม
Begin Declare set vector v and iterator st. Initialize st = set_symmetric_difference (set1, set1 + n, set2, set2 +n, v.begin())) Print the elements obtained after symmetric_difference of 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_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