Es scheint, dass lodashs sortedIndex ein vorwärts sortiertes Array erwartet, damit seine binäre Suche funktioniert. (z. B. [0,1,2,4]
)SortedIndex für umgekehrt sortiertes Array?
Gibt es eine Möglichkeit, sortierteIndexBy zu verwenden, wenn das Array umgekehrt sortiert wird? (z.B. [4,2,1,0]
)?
> _.sortedIndex([0,1,2,4], 3)
> 3
> _.sortedIndex([4,2,1,0], 3)
> 4
Um dies jetzt zu arbeiten, ich habe die Anordnung umgekehrt, die sortedIndex finden, das neue Element einzufügen, und dann die Array un-umkehren.
Hinweis - brauchen etwas, das für die Sortierung von Strings sowie Zahlen funktioniert.
['A','B','D']
in ['D','B','A']
und einfügen 'C'
.
Gute Idee! Leider muss ich manchmal Strings auf diese Weise sortieren. [A, B, D] in [D, B, A] und füge C ein. – jedierikb
Für 'string' Fall aktualisiert. – fuyushimoya
Aber für längere Strings ('AAA', 'AAB', 'AAC') müsste man die Zeichenkette durchlaufen, um jedes Zeichen zu konvertieren. Ich fürchte, es könnte schneller sein, an diesem Punkt umzukehren. – jedierikb