Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ตรวจสอบว่าองค์ประกอบทั้งหมดในอาร์เรย์ไม่ซ้ำกันหรือไม่ใน Python


สมมติว่าเรามีรายการตัวเลขชื่อ nums เราต้องตรวจสอบว่าองค์ประกอบทั้งหมดใน nums เป็นเอกลักษณ์หรือไม่

เช่น ถ้าอินพุตเป็น nums = [2, 3, 6, 5, 1, 8] ผลลัพธ์จะเป็น True เนื่องจากทุกองค์ประกอบไม่ซ้ำกัน

ในการแก้ปัญหานี้ เราจะทำตามขั้นตอนดังนี้:

  • n := ขนาดของ l
  • s := เซตใหม่
  • สำหรับ i ในช่วง 0 ถึง n ทำ
    • เพิ่ม l[i] เข้าไปใน s
  • คืนค่า true เมื่อขนาดของ s เท่ากับขนาดของ l มิฉะนั้น false

ลองดูการนำไปใช้ดังต่อไปนี้เพื่อเข้าใจได้ดียิ่งขึ้น:

ตัวอย่าง

def solve(l):
    n = len(l)
    s = set()
    for i in range(0, n):
        s.add(l[i])
    return (len(s) == len(l))

l = [2, 3, 6, 5, 1, 8]
print(solve(l))

อินพุต

[2, 3, 6, 5, 1, 8]

ผลลัพธ์

True