Python程式:檢查元素頻率是否為偶數
假設我們有一個名為nums的元素列表,我們需要檢查所有數字是否都出現偶數次。我們必須使用常量空間來解決這個問題。
因此,如果輸入類似於nums = [8, 9, 9, 8, 5, 5],則輸出將為True,因為所有數字都出現了兩次。
為了解決這個問題,我們將遵循以下步驟:
如果nums的大小為奇數,則
返回False
對列表nums進行排序
對於範圍1到nums大小的i,執行:
如果nums[i]與nums[i - 1]相同,則
nums[i] := 0,
nums[i - 1] := 0
當nums中所有元素的總和等於0時返回true,否則返回false
示例
讓我們看看下面的實現,以便更好地理解
def solve(nums): if len(nums) & 1: return False nums.sort() for i in range(1, len(nums)): if nums[i] == nums[i - 1]: nums[i] = nums[i - 1] = 0 return sum(nums) == 0 nums = [8, 9, 9, 8, 5, 5] print(solve(nums))
輸入
[8, 9, 9, 8, 5, 5]
輸出
True
廣告