Ich frage mich, ob es eine einfache Möglichkeit gibt, eine Karte aus einem Array von Schlüsseln und einem Array von Werten zu erstellen. für exemple, wenn ich 2 ArraysErstellen einer Karte aus 2 Arrays von Werten und Schlüsseln in Javascript
var keys = [0, 4, 2, 3, 1];
var values = ["first", "second", "third", "fourth", "fifth"];
und ich beabsichtige, diese Karte zu erhalten:
{
0 => 'first',
4 => 'second',
2 => 'third',
3 => 'fourth',
1 => 'fifth' }
natürlich etwas schneller Ich suche als:
var myMap = new Map();
for (var i = 0 ; i < keys.length; i++)
myMap.set(keys[i], values[i]);
, weil es O (n) und ich suche etwas O (1)
Ich denke nicht, dass dies in O (1) getan werden kann, aber ich könnte falsch liegen. – marcusshep
Wenn es keine Hashwert-Kollisionen gibt und Sie sich nicht um die Reihenfolge kümmern müssen, können Sie FastMap verwenden: http://www.collectionsjs.com/fast-map –
Sie haben 'n' Werte, die Sie hinzufügen möchten Karte. Egal, was Sie tun, eine Karte kann nicht gleichzeitig 'n'-Werte setzen. –