Mega Code Archive

 
Categories / C++ / Algorithm
 

Use includes() function to check if one set contains another set

#include <algorithm> #include <iostream> #include <vector> using namespace std; void print(int elem) {   cout << elem << " "; } int main(int argc, char** argv) {   vector<int> setOne, setTwo, setThree;   setOne.push_back(1);   setOne.push_back(2);   setOne.push_back(3);      setTwo.push_back(2);   setTwo.push_back(3);   setTwo.push_back(4);   // set algorithms work on sorted ranges   sort(setOne.begin(), setOne.end());   sort(setTwo.begin(), setTwo.end());   if (includes(setOne.begin(), setOne.end(), setTwo.begin(), setTwo.end())) {     cout << "The second set is a subset of the first\n";   }   if (includes(setTwo.begin(), setTwo.end(), setOne.begin(), setOne.end())) {     cout << "The first set is a subset of the second\n";   }   return (0); }