Ich habe ein Array von Arrays, die nicht notwendigerweise dieselbe Größe haben und die ich auf folgende Weise kombinieren möchte.
Jedes verschachtelte Array wird in der Reihenfolge gescannt, in der es im Hauptarray erscheint. Das gescannte Element wird mit dem letzten Element jedes Arrays vor dem aktuellen und dem ersten Element jedes Arrays nach dem aktuellen kombiniert.
Beispiel:
In der Praxis ist all_arrays eine Liste, die verschachtelten Arrays sind Numpy-Arrays und jede Kombination sollte ein Tupel der Länge = 3 sein. Meine aktuelle Implementierung sieht so aus:
combinations = []
for ii in range(len(all_arrays)):
while len(all_arrays[ii]) > 1:
combinations.append(next(zip(*all_arrays)))
all_arrays[ii] = all_arrays[ii][1:]
combinations.append(next(zip(*all_arrays)))
Es funktioniert gut, aber ich hätte zwei Fragen:
Hat diese Art von Kombination einen Namen? Ich frage beides wegen meines persönlichen Wissens, aber auch, weil es, wenn es einen Namen hat, wahrscheinlich schon einen Algorithmus gibt, der es schneller implementiert hat als ich.
Auch wenn es keinen Namen hat, sehen Sie eine bessere Möglichkeit, es zu implementieren (vielleicht sogar mit einem anderen Datentyp)?
Ich habe ein Array von Arrays, die nicht notwendigerweise dieselbe Größe haben und die ich auf folgende Weise kombinieren möchte. Jedes verschachtelte Array wird in der Reihenfolge gescannt, in der es im Hauptarray erscheint. Das gescannte Element wird mit dem letzten Element jedes Arrays vor dem aktuellen und dem ersten Element jedes Arrays nach dem aktuellen kombiniert. Beispiel: [code]all_arrays = [[1.1, 1.05], [2.1, 2.05, 2], [3.1, 3.05]] [/code] Würde wie folgt kombiniert: [code][ [1.1, 2.1, 3.1], [1.05, 2.1, 3.1], [1.05, 2.05, 3.1], [1.05, 2, 3.1], [1.05, 2, 3.05] ] [/code] In der Praxis ist all_arrays eine Liste, die verschachtelten Arrays sind Numpy-Arrays und jede Kombination sollte ein Tupel der Länge = 3 sein. Meine aktuelle Implementierung sieht so aus: [code]combinations = [] for ii in range(len(all_arrays)): while len(all_arrays[ii]) > 1: combinations.append(next(zip(*all_arrays))) all_arrays[ii] = all_arrays[ii][1:] combinations.append(next(zip(*all_arrays))) [/code] Es funktioniert gut, aber ich hätte zwei Fragen: [list] [*]Hat diese Art von Kombination einen Namen? Ich frage beides wegen meines persönlichen Wissens, aber auch, weil es, wenn es einen Namen hat, wahrscheinlich schon einen Algorithmus gibt, der es schneller implementiert hat als ich. [*]Auch wenn es keinen Namen hat, sehen Sie eine bessere Möglichkeit, es zu implementieren (vielleicht sogar mit einem anderen Datentyp)? [/list]
Ich habe ein Array von Arrays, die nicht notwendigerweise dieselbe Größe haben und die ich auf folgende Weise kombinieren möchte.
Jedes verschachtelte Array wird in der Reihenfolge gescannt, in der...
Ich habe ein Array von Arrays, die nicht notwendigerweise dieselbe Größe haben und die ich auf folgende Weise kombinieren möchte.
Jedes verschachtelte Array wird in der Reihenfolge gescannt, in der...
Ich habe ein Array von Arrays, die nicht notwendigerweise dieselbe Größe haben und die ich auf folgende Weise kombinieren möchte.
Jedes verschachtelte Array wird in der Reihenfolge gescannt, in der...
Ziel dieser Forschung ist es, die Leistungsunterschiede zwischen JIT- (Just-in-Time-Kompilierung) und AOT-Strategien (Ahead-of-Time-Kompilierung) zu untersuchen und ihre jeweiligen Vor- und Nachteile...
Ziel dieser Forschung ist es, die Leistungsunterschiede zwischen JIT- (Just-in-Time-Kompilierung) und AOT-Strategien (Ahead-of-Time-Kompilierung) zu untersuchen und ihre jeweiligen Vor- und Nachteile...