utros
06.05.2011 17:39 eoranged
Пстач, вот есть список:
l = [randint(0,10000) for i in range(0,1000000)]
И из него нужно быстренько вытащить список элементов, которые повторяются (количество не волнует). Как бы это по-лучше сделать?
filter?
если влоб, то что-то вроде a = []; b = []; for i in l: if i in a: b.append(i); continue; a.append(i);
http://pastebin.com/0sHGV7Ca
Я не понял, зачем 3 массив
set не list. Я предположил, что по set поиск проще, чем по list
Что-то я не понимаю как фильтром это сделать. Разъясни.
Это я сказал первое, что пришло в голову, до того, как вчитался в вопрос. В принципе можно, наверное, если получится в одну лямбду все ужать.
Там адский пиздец же выйдет, не?
разумеется
У меня такое чувство, что счетчик с defaultdict будет быстрее.
А нет, вру.
И да, это пиздец как медленно.
/5 в десятки раз быстрее оказался.
>если влоб
Если полбу =)