插入map <int,set <int =“”>&gt; </int,>

时间:2014-11-19 19:16:20

标签: c++ dictionary std stdmap

为什么下面的代码没有在map<int, set<int> >中插入元素?

(执行以下代码后所有集合的大小为0.)

我正在此地图中创建一个邻接列表。

map<int, set<int> > m;
cin>>n;
while(n--)
{
    cin>>t;
    int i=0;
    while(t--)
    {
        scanf("%d",&x);
        set<int> s;
        m[x] = s;
        if(i != 0)
            m[prev].insert(x);
        prev = x;
    }
}

2 个答案:

答案 0 :(得分:2)

i i == 0在检查时if(i != 0) {{1}}。{/ 1}}。

答案 1 :(得分:1)

您的变量'i'始终为0.
如果'i'是!= 0

,您只需将元素插入到集合中