Найти уникальный номер
Дан список, список может быть оочень большим.
Необходимо: найти уникальный элемент списка, например:
arr = [ 1, 1, 1, 2, 1, 1 ] ответ: 2 или arr = [ 0, 0, 0.55, 0, 0 ] ответ 0.55
Мои решения: через кортежи:
def find_uniq(arr):
return [i for i in [(i,arr.count(i)) for i in arr] if i[1] == 1][0][0]
через словари:
def find_uniq(arr):
d = {i:arr.count(i) for i in arr}
return [i for i in d if d[i] == 1][0]
Но оба они не проходят, пишет:
Max Buffer Size Reached (1.5 MiB)
что мои решения превысили максимальный размер буфера... помогите, подскажите как же оптимизировать по быстродействию...