leetcode 442 陣列中重複的資料

2022-06-24 03:51:11 字數 497 閱讀 2950

給定乙個整數陣列 a,其中1 ≤ a[i] ≤ n (n為陣列長度), 其中有些元素出現兩次而其他元素出現一次。

找到所有出現兩次的元素。

你可以不用到任何額外空間並在o(n)時間複雜度內解決這個問題嗎?

示例:輸入:

[4,3,2,7,8,2,3,1]

輸出:[2,3]

from typing import list

class solution:

def findduplicates(self, nums: list[int]) -> list[int]:

res=

for i in range(len(nums)):

if nums[abs(nums[i])-1]<0:#如果為負數,說明以前修改過

nums[abs(nums[i])-1]=-nums[abs(nums[i])-1]

return res

LeetCode442 陣列中重複的資料

給定乙個整數陣列 a,其中1 a i n n為陣列長度 其中有些元素出現兩次而其他元素出現一次。找到所有出現兩次的元素。你可以不用到任何額外空間並在o n 時間複雜度內解決這個問題嗎?示例 輸入 4,3,2,7,8,2,3,1 輸出 2,3 思路 使用額外的同nums陣列空間大小相同的陣列為nums...

leetcode442 陣列中重複的資料

給定乙個整數陣列 a,其中1 a i n n為陣列長度 其中有些元素出現兩次而其他元素出現一次。找到所有出現兩次的元素。你可以不用到任何額外空間並在o n 時間複雜度內解決這個問題嗎?示例 輸入 4 3,2 7,8 2,3 1 輸出 2 3 方法一 遍歷到位置i時,將位置i的元素nums i 和位置...

中等 LeetCode 442 陣列中重複的資料

題目 給定乙個整數陣列 a,其中1 a i n n為陣列長度 其中有些元素出現兩次而其他元素出現一次。找到所有出現兩次的元素。你可以不用到任何額外空間並在o n 時間複雜度內解決這個問題嗎?示例 解題思路及 1.思路 根據題意,陣列中元素大小範圍為1 n,與陣列索引範圍0 n 1 只相差1,所以我們...