কম্পিউটার টিউটোরিয়াল

C++ STL-এ Set Difference বাস্তবায়ন: সেট বিয়োগ

দুটি সেটের ডিফারেন্স (Difference) হলো সেই উপাদানগুলো যা প্রথম সেটে আছে কিন্তু دوم সেটে নেই। ফলাফল প্রথম সেটের ক্রমেই থাকে।

সেট অপারেশন প্রকারভেদ:

  • Set Union
  • Set Intersection
  • Symmetric Set Difference
  • Set Difference (Subtraction)

এলগরিদম

শুরু
  ভেক্টর v এবং ইটারেটর it ঘোষণা করুন
  it = set_difference(set1, set1+n, set2, set2+n, v.begin())
  ডিফারেন্সের উপাদান সংখ্যা এবং মান প্রিন্ট করুন
শেষ

উদাহরণ কোড

#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 it;

    sort(set1, set1 + 6);
    sort(set2, set2 + 6);

    it = set_difference(set1, set1 + 6, set2, set2 + 6, v.begin());
    v.resize(it - v.begin());

    cout << "The difference between the sets has " << v.size() << " elements: " << endl;
    for (it = v.begin(); it != v.end(); ++it)
        cout << *it << " ";
    cout << endl;

    return 0;
}

আউটপুট

The difference between the sets has 4 elements:
5 8 9 10

ব্যাখ্যা: set1-এ আছে ৫,৬,৭,৮,৯,১০। set2-এ আছে ১,২,৩,৪,৬,৭। সাধারণ উপাদান ৬,৭ বাদ দিয়ে বাকি ৫,৮,৯,১০ হলো ডিফারেন্স।

  1. C++ STL-এ Set Union বাস্তবায়ন: দুটি সেটের ইউনিয়ন

  2. C++ STL-এ Set Symmetric Difference বাস্তবায়ন

  3. C++ STL-এ Set Intersection বাস্তবায়ন: দুটি সেটের অন্তঃসেট

  4. C++ STL-এ Deque বাস্তবায়ন: ডাবল-এন্ডেড কিউ