fork download
  1. def com_loop(lista):
  2. r = float("inf")
  3. n = len(lista)
  4. for i in range(0, n - 1):
  5. for j in range(i + 1, n):
  6. diff = abs(lista[i] - lista[j])
  7. if diff < r:
  8. r = diff
  9. return r
  10.  
  11. def com_sort(lista):
  12. r = float("inf")
  13. lista = sorted(lista)
  14. for i in range(len(lista) - 1):
  15. diff = abs(lista[i] - lista[i + 1])
  16. if diff < r:
  17. r = diff
  18. return r
  19.  
  20.  
  21. import random
  22. # gerando uma lista com 1000 números aleatórios
  23. numeros = random.sample(range(1, 1000000), 1000)
  24.  
  25. import timeit
  26.  
  27. print(timeit.repeat('com_loop(numeros)', repeat=2, number=20, globals=globals()))
  28. print(timeit.repeat('com_sort(numeros)', repeat=2, number=20, globals=globals()))
Success #stdin #stdout 2.97s 12424KB
stdin
Standard input is empty
stdout
[1.4175640121102333, 1.5161951966583729]
[0.007649261504411697, 0.007523171603679657]