Эффективная генерация и проверка каждого элемента в комбинациях

#python #optimization #binary #combinations

#питон #оптимизация #двоичный #комбинации #python

Вопрос:

У меня есть список символов chrs = ['A','B','C','D'] . Я хотел бы перебрать все и проверить комбинации:

Я хотел бы проверить все элементы в следующем порядке:

  • Первый список: A -> AB -> ABC -> ABCD -> ABD
  • Второй список: AC -> ACD
  • Третий список: AD
  • Четвертый список: B -> BC -> BCD
  • Пятый список: BD
  • Шестой список: C -> CD
  • Окончательный список: D

Моя цель — сократить время, необходимое для перебора всех комбинаций. Например: Если A результата нет, я не буду проверять следующие строки (AB -> ABC -> ABCD -> ABD) . Потому что A является префиксом этих следующих строк.

Кто-нибудь может порекомендовать, как я могу сделать, чтобы ускорить работу комбинации? Потому что, когда у меня больше символов, мне приходится тратить больше времени на свою программу