fork(1) download
  1. import time as t
  2. from collections import Counter
  3.  
  4. eles = list(range(5000000)) + list(range(5000000))
  5. eles.append(104933)
  6. eles.append(104933)
  7. eles.append(104933)
  8. print('len list: ', len(eles))
  9. print()
  10.  
  11. st = t.time()
  12. print('Using Counter().most_common(): ')
  13. print(Counter(eles).most_common(1)[0])
  14. print('Time: ', t.time()-st)
  15. print()
  16.  
  17. st = t.time()
  18.  
  19. def mosty(lst):
  20. sort = sorted(lst)
  21. count, maxi, last_ele = 0, 0, None
  22. for ele in sort:
  23. if(maxi < count):
  24. results = (last_ele, count)
  25. maxi = count
  26. if last_ele == ele:
  27. count += 1
  28. else:
  29. count = 1
  30. last_ele = ele
  31. return results
  32.  
  33. print('No counter')
  34. print(mosty(eles))
  35. print('Time: ', t.time()-st)
Success #stdin #stdout 2.25s 10384KB
stdin
Standard input is empty
stdout
len list:  10000003

Using Counter().most_common(): 
(104933, 5)
Time:  0.9898550510406494

No counter
(104933, 5)
Time:  0.8624341487884521