Schnellster Weg, um alle Permutationen von 0, 1 der Breite n ohne ITertools in reinem Python zu finden?Python

Python-Programme
Anonymous
 Schnellster Weg, um alle Permutationen von 0, 1 der Breite n ohne ITertools in reinem Python zu finden?

Post by Anonymous »

Ich möchte eine effiziente (effiziente Ausführungszeit optimiert für weniger Ausführungszeit) erstellen, ohne iTertools zu verwenden und nur integrierte Pythonfunktionen und -operatoren usw. (alles verwendbar ohne Import ) als selbst auferlegte Programmierherausforderung. ^ n natürliche Zahlen in binär. Die Ausgabe sollte in Tuple Format sein. Und unter den oben genannten Beschränkungen, iTertools.product ((0, 1), repep = 3) qualifiziert sich nicht als Lösung.

Code: Select all

from typing import Generator, Tuple

def powerset_indices(n: int) -> Generator[Tuple[int, ...], None, None]:
if not isinstance(n, int) or n < 1:
raise ValueError("The argument n must be a positive integer")

numeral = [0] * n
maxi = n - 1
for _ in range(1  Generator[Tuple[int, ...], None, None]:
if not isinstance(n, int) or n < 1:
raise ValueError("The argument n must be a positive integer")

for i in range(1  Generator[Tuple[bool, ...], None, None]:
if not isinstance(n, int) or n < 1:
raise ValueError("The argument n must be a positive integer")

places = [1 
My original function is only slower than product
und es ist schneller als die beiden späteren Funktionen mit einem breiten Spielraum. Kann jemand eine Lösung schneller anbieten als Powerset_indices , während nur ein integriertes Python verwendet wird?>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post