Computer >> Máy Tính >  >> Lập trình >> Python

Số đơn trong Python


Giả sử chúng ta có một mảng A. Trong mảng này có bao nhiêu số xuất hiện hai lần. Chỉ một phần tử có thể được tìm thấy một lần duy nhất. Chúng ta phải tìm phần tử đó từ mảng đó. Giả sử A =[1, 1, 5, 3, 2, 5, 2], thì kết quả đầu ra sẽ là 3. Vì có mỗi số hai lần, chúng ta có thể thực hiện XOR để loại bỏ phần tử đó. bởi vì chúng tôi biết y XOR y =0

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau.

  • Lấy một biến res =0
  • đối với mỗi phần tử e trong mảng A, định dạng sẵn res =res XOR e
  • trả lại res

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

class Solution(object):
   def singleNumber(self, nums):
      """
      :type nums: List[int]
      :rtype: int
      """
      ans = nums[0]
      for i in range(1,len(nums)):
         ans ^=nums[i]
      return ans
ob1 = Solution()
print(ob1.singleNumber([1,1,5,3,2,5,2]))

Đầu vào

nums = [1,1,5,3,2,5,2]

Đầu ra

3