C++ set函数在集合运算中的应用

C++中的set是一种标准库容器,用于存储不重复的元素,并且通常按照升序排序。set容器提供了一系列集合运算的方法,包括并集、交集、差集等。

下面是一些set容器在集合运算中的应用示例:

  1. 并集:将两个set容器合并成一个包含两个set中所有元素的新set。
#include <iostream>#include <set>int main() {
    std::set<int> set1 = {1, 2, 3, 4};
    std::set<int> set2 = {3, 4, 5, 6};

    std::set<int> unionSet;
    std::set_union(set1.begin(), set1.end(), set2.begin(), set2.end(), std::inserter(unionSet, unionSet.begin())); for(auto num : unionSet) {
        std::cout << num << " ";
    } return 0;
}

输出结果为:1 2 3 4 5 6

  1. 交集:找出两个set容器中相同的元素。
#include <iostream>#include <set>int main() {
    std::set<int> set1 = {1, 2, 3, 4};
    std::set<int> set2 = {3, 4, 5, 6};

    std::set<int> intersection;
    std::set_intersection(set1.begin(), set1.end(), set2.begin(), set2.end(), std::inserter(intersection, intersection.begin())); for(auto num : intersection) {
        std::cout << num << " ";
    } return 0;
}

输出结果为:3 4

  1. 差集:找出第一个set容器中有而第二个set容器中没有的元素。
#include <iostream>#include <set>int main() {
    std::set<int> set1 = {1, 2, 3, 4};
    std::set<int> set2 = {3, 4, 5, 6};

    std::set<int> difference;
    std::set_difference(set1.begin(), set1.end(), set2.begin(), set2.end(), std::inserter(difference, difference.begin())); for(auto num : difference) {
        std::cout << num << " ";
    } return 0;
}

输出结果为:1 2

通过set容器的集合运算方法,可以方便地进行集合操作,如并集、交集、差集等。这些方法使得处理集合数据变得更加简单和高效。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo6@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram