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

ตัวเลขที่ไม่ซ้ำกันและมีค่ามากที่สุดใน Python

สมมติว่าเรามีรายการตัวเลข เราต้องคืนค่าตัวเลขที่เกิดขึ้นครั้งเดียว หากไม่มีองค์ประกอบแบบนี้ ให้คืนค่า -1 ดังนั้นถ้ารายการคือ [5,2,3,6,5,2,9,6,3] ผลลัพธ์จะเป็น 9

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนต่อไปนี้ −

  • เราจะตรวจสอบแต่ละองค์ประกอบ และใส่ลงในแมป หากองค์ประกอบไม่อยู่ในแมป ให้เพิ่มรายการใหม่ มิฉะนั้นเพิ่มค่า
  • จากนั้นวนผ่านแมป เมื่อค่าเป็น 1 ให้คืนค่าคีย์

ตัวอย่าง (Python)

มาดูการนำไปใช้เพื่อความเข้าใจที่ดีขึ้น −

class Solution(object):
    def largestUniqueNumber(self, A):
        d = {}
        ans = -1
        for i in A:
            if i not in d:
                d[i] = 1
            else:
                d[i] += 1
        for a, b in d.items():
            if b == 1:
                ans = max(a, ans)
        return ans

ob1 = Solution()
print(ob1.largestUniqueNumber([5, 2, 3, 6, 5, 2, 9, 6, 3]))

อินพุต

[5,2,3,6,5,2,9,6,3]

ผลลัพธ์

9