У меня два defaultdict
, размер этих defaultdict
слишком велик Пример этих двух defaultdict:
a = {'20170101':('a','b','c','d'),'20170102':('a','b','e','g'),'20170103':('w','q','c','d'),'20170104':('m','b','n','d'),'20170105':('a','d','f','h'),'20170106':('a','s','t','i')}
b = {'20170101':('x','y','z','d'),'20170102':('w','b','e','h'),'20170103':('a','b','m','n'),'20170104':('g','a','n','u'),'20170105':('a','d','g','v'),'20170106':('u','v','t','s')}
Я хочу получить количество общих элементов в соответствующих датах, я попробовал следующий код, и он работает, но теперь я хочу оптимизировать его с точки зрения пространства и времени.
for key in a.viewkeys() & b.viewkeys():
count = len(set(b[key]) & set(a[key]))
print key,"-",count
данные довольно высоки. даты могут содержать 100 000 элементов.
Я новичок в c ++, так что если кто-то, кто мог бы помочь в создании библиотеки cpp и интегрировать ее с python.
Задача ещё не решена.
Других решений пока нет …