| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 241 人关注过本帖
标题:数组的集合运算
只看楼主 加入收藏
leeqihero
Rank: 3Rank: 3
等 级:论坛游民
威 望:7
帖 子:101
专家分:95
注 册:2016-3-24
结帖率:25%
  问题点数: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
帖 子:101
专家分:95
注 册:2016-3-24
  得分:0 
如果给定的数组有重复的元素,首先要去除重,再做集合运算。用javascript写出来。
2019-03-19 14:47
leeqihero
Rank: 3Rank: 3
等 级:论坛游民
威 望:7
帖 子:101
专家分:95
注 册: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.paperpass.com/
2019-05-03 21:18







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

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