Menu
CoddyTech

数学:对称差

本课属于 Coddy JavaScript 学习旅程的“逻辑与流程”单元。第 39 课,共 65 课。

两个集合 A 和 B 的对称差是一个新集合,其中包含属于 A 或 B,但不同时属于两者的元素。它可以看作 A - B 和 B - A 的并集。

例如:

const set1 = new Set(arr1);
const set2 = new Set(arr2);

// 创建对称差集
const symmetricDiff = new Set([
  ...set1.difference(set2),
  ...set2.difference(set1)
]);

// 转换回数组
const result = Array.from(symmetricDiff);
challenge icon

挑战

简单

创建一个名为 efficientSymmetricDifference 的函数,它接收两个数组作为参数:arr1 和 arr2。该函数应将数组转换为集合。创建一个新的 Set,作为两个输入 Set 的对称差,将其转换为数组并返回。

亲手试试

function efficientSymmetricDifference(arr1, arr2) {
    const set1 = new Set(arr1)
    const set2 = new Set(arr2)
    const symDiff = new Set();
    // 在这里编写你的代码


    return Array.from(symDiff);

}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

逻辑与流程中的所有课

自己练习: JavaScript 在线编译器