Я просмотрел несколько фактов на нескольких сайтах, и никто из них не дал мне решения. Эта часть кода занимает более 5 секунд для запуска:
for i in xrange(100000000):
pass
Я работаю над цельной оптимизационной задачей, и мне нужно использовать алгоритм O (n log n) edit: алгоритм O (n²/4), где n означает все элементы матрицы, т.е., в следующем коде n * m = 10000. Таким образом, для матрицы 100 * 100 с 10000 элементами это приведет к почти 25000000 итераций.... Его код можно суммировать следующим образом:
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]
Должен ли я отказаться от Python и вернуться на Java или на C?
Я работаю с Python 2.7 и Psyco недоступен. PyPy не поддерживает Tkinter из коробки, и я использую Tkinter.
Итак, улучшат ли скорость цикла? Существуют ли другие решения?