Tri d'un tableau de chaînes de caractères en Ruby

J'ai appris tableau deux méthodes de tri en Ruby:

array = ["one", "two", "three"]
array.sort.reverse!

ou:

array = ["one", "two", "three"]
array.sort { |x,y| y<=>x }

Et je ne suis pas en mesure de différencier entre les deux. Quelle méthode est la meilleure et comment exactement sont-ils différents dans l'exécution?

  • Ces poils d'une question. C'est la même méthode #sort, et pour la mise en œuvre deatils, n'hésitez pas à consulter code source C, ruby-doc.org/core-2.0/Array.html#method-i-sort.
  • Aparté: Si vous avez besoin d'un discbased en Ruby qui prend en charge la plupart des Énumérable les méthodes et les trie et stocke les données uniques, vous voudrez peut-être regarder à SortedSet.
InformationsquelleAutor poorvank | 2013-05-19