Я думал, что у меня есть очень простая проблема - найти все подстроки данной строки.
Я сделал это следующим образом:
unique_substrings = list(set([p[i:j+1+i] for i in range(len(p)) for j in range(len(p))]))
Но производительность очень плохая.На случайно сгенерированной строке длиной 900 у меня уходит 1,5 секунды.Затем я выполняю математическую операцию на основе длины для каждой подстроки, которая дополнительно стоит больше времени, добавляя 3-4 секунды.
Как я могу улучшить производительность с точки зрения времени?
Уже естьаналогичный ответ здесь , но он относится к памяти.Память не мое узкое место.