劍指offer 陣列 陣列中只出現一次的數字

2021-10-03 14:57:03 字數 752 閱讀 7505

思路:借用列表中的刪除元素功能。

# -*- coding:utf-8 -*-

class

solution

:# 返回[a,b] 其中ab是出現一次的兩個數字

def(self, array)

:# write code here

list =

for e in array:

if e not

in list:

else

:del list[list.index(e)

]return list

法2:

# -*- coding:utf-8 -*-

class

solution

:# 返回[a,b] 其中ab是出現一次的兩個數字

def(self, array)

:# write code here

dict =

for num in array:

if num in dict:

del dict[num]

else

: dict[num]=1

return

[key for key in dict]

劍指offer (陣列)陣列中只出現一次的數字

1 乙個整型陣列裡除了兩個數字之外,其他的數字都出現了兩次。請寫程式找出這1個只出現一次的數字。要求時間複雜度為o n 控制項複雜度為o 1 2 乙個整型陣列裡除了兩個數字之外,其他的數字都出現了兩次。請寫程式找出這兩個只出現一次的數字。要求時間複雜度為o n 控制項複雜度為o 1 1 當陣列中只存...

劍指offer 陣列中只出現一次的數字(陣列)

乙個整型陣列裡除了兩個數字之外,其他的數字都出現了偶數次。請寫程式找出這兩個只出現一次的數字。這題想到用map,類似於 陣列中出現次數超過一半的陣列 其中,data i 是key值,出現次數count為value值。方法一 這個方法比較容易想到,思路也比較簡單。這個就是典型的用空間換時間了,時間複雜...

劍指offer 陣列中只出現一次的數字

1 乙個數字出現一次,其他數字出現兩次 兩個相同的數異或為0,所以將陣列裡的所有數依次異或,得到的結果就是只出現一次的數。include using namespace std int main int num 0 for int i 0 i 7 i cout 2 乙個數字出現一次,其他數字出現n次...