給定乙個整數陣列 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,所以我們...