我有兩個清單:prices_distincts
,prices
。循環工作時間太長
他們通過hash_brand_artnum
連接,兩者通過hash_brand_artnum
排序我不明白爲什麼循環工作了這麼久:
如果
prices_distincts
長度爲100,000它爲30 min
但如果
prices_distincts
的長度爲10,000,則適用於10 sec
。
代碼:
prices_distincts = [{'hash_brand_artnum':1202},...,..]
prices = [{'hash_brand_artnum':1202,'price':12.077},...,...]
for prices_distinct in prices_distincts:
for price in list(prices):
if prices_distinct['hash_brand_artnum'] == price['hash_brand_artnum']:
print price['hash_brand_artnum']
#print prices
del prices[0]
else:
continue
我需要尋找具有相同價格的項目。 price_distincts和價格之間的關係是一對多關係。並且價格相同['hash_brand_artnum']
它的工作,只要因爲你的算法是O(N^2)和100000^2 =百億和10000^2 = 100000000 所以之間的兩個數因子爲100和30分鐘和10秒之間因子〜100 –
@RomanPekar這應該是一個答案。 – iamnotmaynard
@iamnotmaynard done :) –