标题:数组的集合运算
只看楼主
leeqihero
Rank: 3Rank: 3
等 级:论坛游侠
威 望:7
帖 子:122
专家分:135
注 册:2016-3-24
结帖率:20%
 问题点数:0 回复次数:3 
数组的集合运算
给定两个数组,比如a=[1,2,3,4,5],b=[3,5,6,7,8]
求a与b的并集[1,2,3,4,5,6,7,8]
求a与b的交集[3,5]
求差集a-b=[1,2,4],b-a=[6,7,8]
搜索更多相关主题的帖子: 数组 集合 运算 给定 并集 
2019-03-19 14:43
leeqihero
Rank: 3Rank: 3
等 级:论坛游侠
威 望:7
帖 子:122
专家分:135
注 册:2016-3-24
得分:0 
如果给定的数组有重复的元素,首先要去除重,再做集合运算。用javascript写出来。
2019-03-19 14:47
leeqihero
Rank: 3Rank: 3
等 级:论坛游侠
威 望:7
帖 子:122
专家分:135
注 册:2016-3-24
得分:0 
程序代码:
set={
    uniq:function(s){//去重
        var r=[];
        for(var i=0;i<s.length;i++){
            if(s.indexOf(s[i])==i) r.push(s[i]);
        };
        return r;
    },
    d:function(s1,s2){//差集
        var b=this.uniq(s1);
        var a=this.uniq(s2);
        return b.filter(v => !a.includes(v));
    },
    u:function(s1,s2){//并集
        var b=this.uniq(s1);
        var a=this.uniq(s2);
        return this.uniq(a.concat(b));
    },
    n:function(s1,s2){//交集
        var b=this.uniq(s1);
        var a=this.uniq(s2);
        return b.filter(v => a.includes(v));
    },
    in:function(s1,s2){//是否是子集
        var b=this.uniq(s1);
        var a=this.uniq(s2);
        var c=this.n(b,a);
        return b.length==c.length;
    }
};

2019-03-20 16:09
dog852285800
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2019-5-3
得分:0 
推荐大家一个靠谱的论文检测平台。重复的部分有详细出处以及具体修改意见,能直接在文章上做修改,全部改完一键下载就搞定了。怕麻烦的话,还能用它自带的降重功能。哦对了,他们现在正在做毕业季活动, 赠送很多免费字数,可以说是十分划算了!地址是:http://www.
2019-05-03 21:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-493685-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037902 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved