Menu
CoddyTech

Toán học: Phép hiệu của các tập hợp

Thuộc phần Logic và luồng chương trình trong hành trình JavaScript của Coddy. Bài học 38 trên 65.

Hiệu của hai tập hợp A và B (thường được viết là A - B) là một tập hợp mới chứa các phần tử có trong A nhưng không có trong B. Phép toán này không có tính giao hoán, nghĩa là A - B không nhất thiết bằng B - A.

Ví dụ:

const setA = new Set([1, 2, 3, 4, 5]);
const setB = new Set([3, 4, 5, 6, 7]);

// A - B: các phần tử (element) thuộc A nhưng không thuộc B
const differenceAB = new Set([...setA].filter(x => !setB.has(x)));
console.log('A - B:', differenceAB); // Set { 1, 2 }

// B - A: các phần tử thuộc B nhưng không thuộc A
const differenceBA = new Set([...setB].filter(x => !setA.has(x)));
console.log('B - A:', differenceBA); // Set { 6, 7 }
challenge icon

Thử thách

Dễ

Tạo một hàm (function) có tên setDifference nhận hai mảng làm tham số: arr1 và arr2. Hàm này cần chuyển các mảng thành tập hợp. Tạo một tập hợp Set mới chứa các phần tử có trong set1 nhưng không có trong set2, chuyển tập hợp đó thành mảng rồi trả về.

Tự làm thử

function setDifference(arr1, arr2) {
    const set1 = new Set(arr1)
    const set2 = new Set(arr2)
    const differenceSet = new Set();
    // Viết code của bạn ở đây
    
    
    return Array.from(differenceSet);
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Logic và luồng chương trình

Tự luyện tập: Trình biên dịch JavaScript online