ในปัญหานี้ให้สองลิสต์ งานคือแสดงความต่างระหว่างสองลิสต์ Python มีเมธอด set() ใช้เมธอดนี้ เซตคือชุดไม่เรียงลำดับไม่มีสมาชิกซ้ำ รองรับการดำเนินการคณิตศาสตร์ union, intersection, difference, symmetric difference
ตัวอย่าง
Input::A = [10, 15, 20, 25, 30, 35, 40] B = [25, 40, 35] Output: [10, 20, 30, 15]
คำอธิบาย
difference list = A - B
อัลกอริทึม
ขั้นตอนที่ 1: อินพุทสองอาร์เรย์ ขั้นตอนที่ 2: แปลงลิสต์เป็นเซตอย่างชัดเจน ขั้นตอนที่ 3: ลบเซตหนึ่งออกจากอีกอันด้วยตัวดำเนินการลบ
โค้ดตัวอย่าง
# โค้ด Python หาความต่างของสองลิสต์
# ใช้ set()
def Diff(A, B):
print("ความต่างของสองลิสต์ ::>")
return (list(set(A) - set(B)))
# โค้ดหลัก
A = list()
n1 = int(input("ป้อนขนาดลิสต์แรก ::"))
print("ป้อนสมาชิกของลิสต์แรก ::")
for i in range(int(n1)):
k = int(input(""))
A.append(k)
B = list()
n2 = int(input("ป้อนขนาดลิสต์ที่สอง ::"))
print("ป้อนสมาชิกของลิสต์ที่สอง ::")
for i in range(int(n2)):
k = int(input(""))
B.append(k)
print(Diff(A, B))
ผลลัพธ์
ป้อนขนาดลิสต์แรก ::5 ป้อนสมาชิกของลิสต์แรก :: 11 22 33 44 55 ป้อนขนาดลิสต์ที่สอง ::4 ป้อนสมาชิกของลิสต์ที่สอง :: 11 55 44 99 ความต่างของสองลิสต์ ::> [33, 22]