Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstring>
- #include <iostream>
- #include <set>
- #include <algorithm>
- using namespace std;
- template <typename Tip>
- set <Tip> Unija (set<Tip> set1, set<Tip> set2)
- { set<Tip> set3;
- auto It1(set1.begin()), It2(set2.begin());
- while (It1!=set1.end() && It2!=set2.end()) {
- if (*It1<*It2) set3.insert(*It1++);
- else if (*It2<*It1) set3.insert(*It2++);
- else { set3.insert(*It1);
- It2++;
- }
- }
- while ( It1!=set1.end()) {
- set3.insert(*It1++);
- }
- while (It2!=set2.end()) {
- set3.insert(*It2++);
- }
- return set3;
- }
- template <typename Tip>
- set <Tip> Presjek (set<Tip> set1, set<Tip> set2)
- { set<Tip> set3;
- auto It1(set1.begin()), It2(set2.begin());
- while (It1!=set1.end() && It2!=set2.end()) {
- if (*It1<*It2) It1++;
- else if (*It2<*It1) It2++;
- else { set3.insert(*It1);
- It2++;
- }
- }
- return set3;
- }
- int main () {
- set <string> s1{"selma", "esma", "od", "emina"};
- set<string> s2{"moze", "esma","alma", "od"};
- cout<<"Unija: ";
- for (string x: Unija(s1,s2)) cout<<x<<" ";
- cout<<endl;
- cout<<"presjek: ";
- for (string x: Presjek(s1,s2)) cout<<x<<" ";
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement