Trong bài này, chúng ta sẽ hiểu cách tính hiệu hai Set. Set là Collection không chứa phần tử trùng lặp, mô hình hóa tập hợp toán học.
Dưới đây là minh họa:
Giả sử đầu vào:
Tập 1: [90, 75, 60, 45] Tập 2: [90, 60]
Đầu ra mong muốn:
Sau khi trừ hai tập: [75, 45]
Thuật toán
Bước 1 - BẮT ĐẦU Bước 2 - Khai báo... Bước 3 - Định nghĩa giá trị. Bước 4 - Tạo 2 Set, thêm phần tử bằng 'add'. Bước 5 - Hiển thị Set ra console. Bước 6 - Tính hiệu tập dùng 'removeAll'. Bước 7 - Hiển thị hiệu hai tập. Bước 8 - KẾT THÚC
Ví dụ 1
Gom thao tác dưới hàm 'main'.
import java.util.HashSet;
import java.util.Set;
public class Demo {
public static void main(String[] args) {
System.out.println("Các gói cần thiết đã được import");
Set<Integer> input_set_1 = new HashSet<>();
input_set_1.add(45);
input_set_1.add(60);
input_set_1.add(75);
input_set_1.add(90);
System.out.println("Tập 1 định nghĩa: " + input_set_1);
Set<Integer> input_set_2 = new HashSet<>();
input_set_2.add(60);
input_set_2.add(90);
System.out.println("Tập 2 định nghĩa: " + input_set_2);
input_set_1.removeAll(input_set_2);
System.out.println("\nSau khi trừ hai tập:\n" + input_set_1);
}
}
Kết quả
Các gói cần thiết đã được import Tập 1 định nghĩa: [90, 75, 60, 45] Tập 2 định nghĩa: [90, 60] Sau khi trừ hai tập: [75, 45]
Ví dụ 2
Đóng gói thao tác vào hàm thể hiện OOP.
import java.util.HashSet;
import java.util.Set;
public class Demo {
static void subtract(Set<Integer> input_set_1, Set<Integer> input_set_2){
input_set_1.removeAll(input_set_2);
System.out.println("\nSau khi trừ hai tập:\n" + input_set_1);
}
public static void main(String[] args) {
System.out.println("Các gói cần thiết đã được import");
Set<Integer> input_set_1 = new HashSet<>();
input_set_1.add(45);
input_set_1.add(60);
input_set_1.add(75);
input_set_1.add(90);
System.out.println("Tập 1 định nghĩa: " + input_set_1);
Set<Integer> input_set_2 = new HashSet<>();
input_set_2.add(60);
input_set_2.add(90);
System.out.println("Tập 2 định nghĩa: " + input_set_2);
subtract(input_set_1, input_set_2);
}
}
Kết quả
Các gói cần thiết đã được import Tập 1 định nghĩa: [90, 75, 60, 45] Tập 2 định nghĩa: [90, 60] Sau khi trừ hai tập: [75, 45]