Skip to content

Instantly share code, notes, and snippets.

@parzibyte
Created January 21, 2019 05:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save parzibyte/cc15c69683fc0a042c42c4d8b7293111 to your computer and use it in GitHub Desktop.
Save parzibyte/cc15c69683fc0a042c42c4d8b7293111 to your computer and use it in GitHub Desktop.
=begin
Ordenar arreglos numéricos y de cadena con Ruby, sort y el operador <=>
@author parzibyte
=end
palabras = ["Ruby", "React", "Rust", "PostgreSQL", "Kotlin"]
puts "Palabras sin ordenar: #{palabras}"
# Lo mismo que los numéros, por defecto es ascendente
palabras_ascendente = palabras.sort
puts "Palabras ordenadas de manera ascendente: #{palabras_ascendente}"
# ["Kotlin", "PostgreSQL", "React", "Ruby", "Rust"]
# Pero igualmente podemos indicar el modo de ordenación; es lo mismo que
# arriba con el numérico pero usando <=> el cual devuelve -1, o 0 -1
# dependiendo de la compración de b y a
palabras_descendentes = palabras.sort{ |a, b| b <=> a}
puts "Palabras ordenadas de manera descendente: #{palabras_descendentes}"
# ["Rust", "Ruby", "React", "PostgreSQL", "Kotlin"]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment