Für zwei Listen,
a = [1, 2, 9, 3, 8, ...] (no duplicate values in a, but a is very big)
b = [1, 9, 1,...] (set(b) is a subset of set(a), 1<<len(b)<<len(a))
indices = get_indices_of_a(a, b)
wie man vermietet get_indices_of_a
return indices = [0, 2, 0,...]
mit array(a)[indices] = b
? Gibt es eine schnellere Methode als die Verwendung von a.index
Was dauert zu lange?
Herstellung b
eine Menge ist eine schnelle Methode, um Listen abzugleichen und Indizes zurückzugeben (siehe zwei Listen in Python vergleichen und Indizes der übereinstimmenden Werte zurückgeben ), aber es verliert den Index des zweiten 1
sowie die Reihenfolge der Indizes in diesem Fall.