Hoi,
Een leuk python probleempje.
Wat is een efficiente manier om bij een serie items in een list van integers 1 op te tellen?
Dus stel ik heb de list: a=[1,1,1,1,1,1,1,1,1,1,1,1]
ik heb een list van indices: indices = [2,5,8]
dus bij item 2, 5 en 8 moet 1 opgeteld worden, dus resultaat:print a:
[1,1,2,1,1,2,1,1,2,1,1,1]
De volgende (naive?) methode werkt:
a=[1,1,1,1,1,1,1,1,1,1,1,1]
indices = [2,5,8]
for i in indices:
a[i]+=1
Nu is het hier simpel, maar ik heb lijsten van miljoenen items. Kan dit efficienter, dus vooral sneller? Of is dit de beste methode?