为了账号安全,请及时绑定邮箱和手机立即绑定

参考答案中这段代码是啥意思?

            for(;i<n;i++)

            {

                t1=typeOf(arr1[i]);

                t2=typeOf(arr2[i]);

                if(countMap1[t1])

                {

                    countMap1[t1]++;

                }

                else

                {

                    countMap1[t1]=1;

                }

                if(countMap2[t2])

                {

                    countMap2[t2]++;

                }

                else

                {

                    countMap2[t2]=1;

                }

            }


正在回答

1 回答

t1是第一个数组第i个元素的类型,t2是第二个数组第i个元素的类型.然后依次存入countMap1和countMap2中.其中以t1和t2为键,当countMap中没有该数据的计数为1,否则原来的数据++.这样就是来使其符合条件( 数组中的成员类型相同,顺序可以不同),意思就是数据种类和相应数量相同,顺序可以不同.最后再对countMap1和countMap1的键值对进行对比来看是否符合条件.

0 回复 有任何疑惑可以回复我~
#1

DOFOR 提问者

非常感谢!
2017-08-09 回复 有任何疑惑可以回复我~
#2

恕_20

if(countMap1[t1]){   countMap1[t1]++; }else{   countMap1[t1]=1; } 麻烦问下,这一段具体什么意思,理解不上去
2017-11-03 回复 有任何疑惑可以回复我~
#3

qq_会长大的幸福_4 回复 恕_20

countMap1[t1]这里边的t1是键(也就是countMap1对象中的一个属性,而countMap1[t1]也就是属性值),countMap1[t1]就是键值,所以if的条件判断里边的意思就是这个值是否为0,如果为0就说明是没有这个属性,把这个属性值设为1;如果不为0就说明存在这个属性,那么就在原值的基础上加1 最终countMap1中存入的就是arr1中所有数据类型的种类和对应的个数
2017-11-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

参考答案中这段代码是啥意思?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信