Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Số duy nhất lớn nhất (Largest Unique Number) trong Python

Cho một danh sách số, cần trả về số xuất hiện đúng 1 lần. Nếu không có phần tử nào thỏa mãn, trả về -1. Ví dụ: [5,2,3,6,5,2,9,6,3] cho kết quả 9.

Để giải quyết:

  • Duyệt từng phần tử, đưa vào map đếm tần suất
  • Duyệt map, khi giá trị = 1, trả về key lớn nhất

Ví dụ (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]))

Đầu vào

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

Kết quả

9