基础算法
数据库
Javascript
HTML 编程
SVG
附录
即判断一个数组是不是完全包含另一个数组,方法好像有很多呀。
假设有数组 a1 和 a2,判断 a1 是否完全包含 a2,即 a2 是不是 a1 的子集。
第一种,最笨的方法,两层遍历。
第二种,只遍历 a2,使用数组方法来判断,可用方法很多。
a1.includes(i)
也可以换成a1.find(i) == null
或a2.findIndex(i) == -1
。
第三种,将数组 a1 转成 Set,用 Set 类的has
方法。
第四种,还是用 Set 类。
这种方法要求 a1 数组内的元素值都唯一,如果不唯一那么就将左面也转一次。
理论上讲,第一种时间复杂度最高,第四种时间复杂度最低。
暂时想不到其他更好的办法,想到再补充。
(本文完)