Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình C ++ để triển khai Set_Intersection trong STL

Giao của hai tập hợp chỉ được tạo thành bởi các phần tử chung của cả hai tập hợp. Các phần tử được sao chép bởi hàm luôn đến từ tập hợp đầu tiên theo cùng một thứ tự. Các phần tử trong cả hai tập hợp sẽ được sắp xếp theo thứ tự.

Các hoạt động tập hợp phổ biến là -

  • Đặt Liên minh
  • Đặt giao lộ
  • Sự khác biệt của Tập hợp Đối xứng hoặc Độc quyền-HOẶC
  • Đặt Chênh lệch hoặc Phép trừ

Chương trình C ++ để triển khai Set_Intersection trong STL

Thuật toán

 Begin Khai báo tập vector v và trình lặp st. Khởi tạo st =set_intersection (set1, set1 + n, set2, set2 + n, v.begin ())) In phần giao nhau giữa hai tập hợp. 

Mã mẫu

 #include  #include  #include  using namespace std; int main () {int set1 [] ={5,6,7,8,9,10}; int set2 [] ={1,2,3,4,6,7}; vectơ  v (10); vector  ::iterator st; sắp xếp (set1, set1 + 6); sắp xếp (set2, set2 + 6); st =set_intersection (set1, set1 + 6, set2, set2 + 6, v.begin ()); v.resize (st - v.begin ()); cout <<"Giao giữa hai tập hợp có" <<(v.size ()) <<"phần tử:" < 

Đầu ra

 Giao điểm giữa hai tập hợp có 2 phần tử:6 7