博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
简单set互异
阅读量:4228 次
发布时间:2019-05-26

本文共 1667 字,大约阅读时间需要 5 分钟。

#include <iostream>
#include <vector>
#include <set>
using namespace std;
void PrintSet(set<int> & s);
void PrintVector(vector< set<int> > & v);
void MakeSet(set<int> & setofdst, vector< set<int> > & v);
bool SelectFromSet(set<int> & setofdst, set<int> & setofsrc);
/*void SetCin(set<int> & tmp);*/
const bool TRUE = 1;
const bool FALSE = 0;
int main()
{
    vector< set<int> > vs;
    int n, m;
    cout << "n = ";
    cin >> n;
    cout << endl;
    cout << "m = ";
    cin >> m;
    static int k;
    set<int> tmp;
    for (int i = 0; i < n; i ++)
    {
        for (int j = 0; j < m; j ++)
        {
            tmp.insert(k++);
        }
//        SetCin(tmp);
        vs.push_back(tmp);
        tmp.clear();
    }
    PrintVector(vs);
    set<int> setofdst;
    MakeSet(setofdst, vs);
    cout << "setofdst :" << endl;
    PrintSet(setofdst);
//     tmp.insert(1);
//     tmp.insert(2);
//     tmp.insert(3);
//     PrintSet(tmp);
//     tmp.insert(1);
//     PrintSet(tmp);
   
}
void PrintSet(set<int> & s)
{
    set<int>::iterator si;
    for (si = s.begin(); si != s.end(); si++) 
    {
        cout << *si << " ";
    }
    cout << endl;
}
void PrintVector(vector< set<int> > & v)
{
    vector< set<int> >::iterator vi;
    for (vi = v.begin(); vi != v.end(); vi++) 
    {
        PrintSet(*vi);
    }
}
void MakeSet(set<int> & setofdst, vector< set<int> > & v)
{
    vector< set<int> >::iterator vi;
    for (vi = v.begin(); vi != v.end(); vi ++)
    {
        SelectFromSet(setofdst, *vi);
    }
}
bool SelectFromSet(set<int> & setofdst, set<int> & setofsrc)
{
    size_t orgsizeofsetofdst = setofdst.size();
    set<int>::iterator si;
    for (si = setofsrc.begin(); si != setofsrc.end(); si++)
    {
        setofdst.insert(*si);
        if (setofdst.size() != orgsizeofsetofdst)
        {
            return TRUE;
        }
    }
    return FALSE;
}
// void SetCin(set<int> & tmp)
// {
//     int i = 0;
//     while (cin >> i)
//     {
//         tmp.insert(i);
//     }
// }
 

转载地址:http://txdqi.baihongyu.com/

你可能感兴趣的文章
[iphone]调出来控制的小圆球(控制点)
查看>>
[react-native]prop,state对比
查看>>
ssl问题被google 拒收
查看>>
[GreenDAO]like的坑
查看>>
正则表达式中的元字符
查看>>
Java Collection很好的介绍
查看>>
java中的JSon解析
查看>>
解决 Mybatis Generator由表字段使用关键字导致的异常方案
查看>>
HTTP请求的基础知识——HTTP中GET,POST和PUT的区别
查看>>
为什么需要Java反射?
查看>>
Java代码反编译——下载class字节码文件及反编译.class文件
查看>>
稀疏表示去噪的理解
查看>>
稀疏表示(二)——KSVD算法详解(结合代码和算法思路)
查看>>
剑指Offer习题集锦——Java实现及思路分析
查看>>
剑指Offer——二叉树镜像问题
查看>>
剑指Offer——二叉搜索树中第K大的节点
查看>>
剑指Offer——数据流中的中位数
查看>>
剑指Offer——查找队列中的最大值
查看>>
剑指Offer——顺时针遍历矩阵
查看>>
剑指Offer——栈的压入、弹出顺序
查看>>