Trong bài toán này cho hai list. Nhiệm vụ hiển thị sự khác biệt giữa hai list. Python cung cấp phương thức set(). Ta dùng phương thức này. Set là tập hợp không có thứ tự và không trùng lặp. Đối tượng set cũng hỗ trợ phép toán toán học như union, intersection, difference, symmetric difference.
Ví dụ
Input::A = [10, 15, 20, 25, 30, 35, 40] B = [25, 40, 35] Output: [10, 20, 30, 15]
Giải thích
list khác biệt = A - B
Thuật toán
Bước 1: Nhập hai mảng. Bước 2: Chuyển list thành set tường minh. Bước 3: Trừ một từ cái kia dùng toán tử trừ.
Mã ví dụ
# Mã Python lấy hiệu của hai list # Dùng set() def Diff(A, B): print("Hiệu Của Hai List ::>") return (list(set(A) - set(B))) # Mã điều khiển A=list() n1=int(input("Nhập kích thước List đầu tiên ::")) print("Nhập Phần Tử List Đầu Tiên ::") for i in range(int(n1)): k=int(input("")) A.append(k) B=list() n2=int(input("Nhập kích thước List thứ hai ::")) print("Nhập Phần Tử List Thứ Hai ::") for i in range(int(n2)): k=int(input("")) B.append(k) print(Diff(A, B)) Kết quả
Nhập kích thước List đầu tiên ::5 Nhập Phần Tử List Đầu Tiên :: 11 22 33 44 55 Nhập kích thước List thứ hai ::4 Nhập Phần Tử List Thứ Hai :: 11 55 44 99 Hiệu Của Hai List ::> [33, 22]