tuve un vistazo a varias dicussions en varios sitios y ninguno de ellos me dio una solución. Esta pieza de código tarda más de 5 segundos para ejecutar:Cómo acelerar el bucle de pitón
for i in xrange(100000000):
pass
Estoy trabajando en un problema de optimización número entero y tengo que utilizar un O (n log n) algoritmo edición: un O (n²/4) algoritmo, donde n representa todos los elementos de la matriz, es decir, en el siguiente código, n * m = 10000. Por lo tanto, para una matriz 100 * 100 con 10000 elementos, dará como resultado casi 25000000 iteraciones.. Su código se puede resumir así:
m = 100
n = 100
for i in xrange(m):
for j in xrange(n):
for i2 in xrange(i + 1, m):
for j2 in xrange(j + 1, n):
if myarray[i][j] == myarray[i2][j2] and myarray[i2][j] == myarray[i][j2]:
return [i, j], [i2, j2]
¿Debo renunciar con Python y volver a Java o en C?
Trabajo con Python 2.7 y Psyco no está disponible. PyPy no admite Tkinter de forma inmediata y estoy usando Tkinter.
Entonces, ¿mejorarían la velocidad de bucle? ¿Hay otras soluciones?
¿Intentó implementar esto con matrices numpy si eso es posible? – joaquin
PyPy ciertamente acelera tales bucles. – delnan
Puede acelerar sus ciclos todo lo que desee, el código anterior no es O (n log n). –