fork download
  1. a=list(range(100000))
  2. b=list(range(2000000))
  3. from time import *
  4. from random import *
  5.  
  6.  
  7.  
  8. def swap(s,n1,n2):
  9. s[n1],s[n2]=s[n2],s[n1]
  10.  
  11.  
  12. def test(k,s):
  13. print(f' -- {k} [{len(s)}] --')
  14. t1=time()
  15. n=len(s)//2-500
  16. for c in range(100000):
  17. swap(s,n+randint(0,1000),n+randint(0,1000))
  18. t2=time()
  19. print(f'swap: {t2-t1:.3f}')
  20. t1=time()
  21. for c in range(300):
  22. del s[n+randint(0,1000)]
  23. s.insert(n+randint(0,1000),randint(0,1000))
  24. t2=time()
  25. print(f'del-insert (middle): {t2-t1:.3f}')
  26.  
  27.  
  28. n=10000
  29. t1=time()
  30. for c in range(300):
  31. del s[n+randint(0,1000)]
  32. s.insert(n+randint(0,1000),randint(0,1000))
  33. t2=time()
  34. print(f'del-insert (10000): {t2-t1:.3f}')
  35.  
  36. n=len(s)-10000
  37. t1=time()
  38. for c in range(300):
  39. del s[n+randint(0,1000)]
  40. s.insert(n+randint(0,1000),randint(0,1000))
  41. t2=time()
  42. print(f'del-insert (end): {t2-t1:.3f}')
  43.  
  44.  
  45. test('a',a)
  46. test('b',b)
  47.  
Success #stdin #stdout 2.01s 94412KB
stdin
Standard input is empty
stdout
 -- a [100000] --
swap: 0.272
del-insert (middle): 0.013
del-insert (10000): 0.024
del-insert (end): 0.003
 -- b [2000000] --
swap: 0.197
del-insert (middle): 0.340
del-insert (10000): 1.054
del-insert (end): 0.003