JavaScript - Tri d'un tableau basé sur un autre tableau d'entiers
Dire que j'ai un tableau: [0,3,4,2,5,1]
Ce que je veux faire est de trier un tableau, telles que:
["one", "two", "three", "four", "five", "six"]
de sorte que la commande correspond à la première matrice.
Ce serait la sortie:
["one", "four", "five", "three", "six", "two"]
Est-il un moyen facile d'accomplir cette?
Votre question est source de confusion, car il n'a rien à voir avec le tri. Vous gardez le tableau dans le même ordre, il suffit de mapper chaque élément du tableau à un élément d'un autre ensemble.
OriginalL'auteur Sarathi Hansen | 2010-10-28
Vous devez vous connecter pour publier un commentaire.
Vous pouvez faire quelque chose comme ceci:
Vous pouvez le tester ici.
Remarque: cela suppose que les tableaux que vous transmettez sont de la même taille, vous devez ajouter des vérifications supplémentaires si cela peut ne pas être le cas.
OriginalL'auteur Nick Craver
//Vous pouvez faire la commande d'un indexée propriété de la matrice,
//et appeler tableau.commandé()
OriginalL'auteur kennebec
M'a demandé ce sur une entrevue téléphonique. Puis le faire sans créer un autre tableau, en supposant que le tableau est très grand. Je ne sais pas si c'est la réponse puisque je n'étais pas capable de faire sur l'appel (damn!), mais voici ce que je suis venu avec.
http://jsfiddle.net/innerb/RENjW/
OriginalL'auteur user982671
Pas sur la façon dont vous obtenez votre premier tableau, mais vous pouvez utiliser un tableau d'objets au lieu de
[0,3,4,2,5,1]
:Et éviter de le traiter.
OriginalL'auteur Mic
OriginalL'auteur kamla