ich eine Liste habe, mit einer bestimmten Reihenfolge:Tragen Sie die Reihenfolge der Liste an ein anderes Listen
L = [1, 2, 5, 8, 3]
Und einige Teillisten mit Elementen der Hauptliste, aber mit einer anderen Reihenfolge:
L1 = [5, 3, 1]
L2 = [8, 1, 5]
Wie kann ich die Bestellung von L
auf L1
und L2
anwenden?
Zum Beispiel sollte die richtige Reihenfolge nach der Verarbeitung sein:
L1 = [1, 5, 3]
L2 = [1, 5, 8]
ich so etwas wie dies bin versucht, aber ich habe Schwierigkeiten, wie die neue Liste mit der richtigen Reihenfolge zu setzen.
new_L1 = []
for i in L1:
if i in L:
print L.index(i) #get the order in L
Oder nur 'key = L.index'. – GingerPlusPlus
Ich bin nicht vertraut mit Python, aber kann mir nicht vorstellen, wie dies * nicht * die Zeit für das Sortieren von "O (n * log (n))" auf "O (n * n * log (n))" verringern sollte . Wenn dies der Fall ist, ist dies nur für kleine Listen möglich. Für größere Listen sollte man wahrscheinlich ein "O (1)' -Lookup-Lexikon von den Elementen zu ihrem Index in der Liste "L" erstellen. – Marco13