Kreuzprodukt von Mengen unter Verwendung von Rekursion
Ich habe die folgende rekursive Routine geschrieben, um das Kreuzprodukt zweier Mengen zu berechnen.
def combine(input1,input2,output):
if len(input2)==0:
return output
else:
for num in input1:
output.append((num,input2[0]))
combine(input1,input2[1:],output)
input1=[1 2 5]
input2=[2 3]
output=[(1,2), (1,3), (2,2),(2,3),(5,2),(5,3)]
Ist es möglich, die Rekursion zu verbessern, z. B. die Schleife in else zu entfernen und zu versuchen, dieselbe Funktion auszuführen? Ich suche nach verschiedenen Wegen, um das Problem zu lösen.
Bearbeiten: Nicht auf der Suche nach einer Lösung mit etwas eingebautem. Auf der Suche nach Möglichkeiten, wie ich eine Rekursion anders durchführen und nicht itertools.product verwenden kann.