Сложность вычисления перестановки - PullRequest
0 голосов
/ 07 января 2019

Я хотел бы проанализировать часть своего кода с точки зрения сложности. В конце дня я хотел бы использовать O (n) -подобную нотацию для описания сложности.

Проблема в следующем: у меня есть города {c1, c2, .., c_N}. У меня также есть {t1, t2, ..., t_M} временные шаги. Я хочу перечислить все возможные маршруты. Маршрут" является последовательностью кортежей {(c_i1, t_j1), ..., (c_iK, t_jK)}, где t_jK <= c_N. То есть длина последовательности не фиксирована. Каждый город можно посетить только один раз, и t_ja <t_jb для b> a. Может ли кто-нибудь помочь мне разобраться в сложности этого?

Первой идеей было сгенерировать все пары (c_i, t_j), а затем сгенерировать все возможные перестановки длины 1, 2, ..., M. Проблема, однако, заключается в том, что мне нужно вычесть перестановки, когда время не в правильном порядке, а также случаи, когда город посещают дважды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...