Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

221
Vistas
Ordenación de matriz no destructiva funcional

Además de la forma nativa de clonar una matriz y luego clasificarla en su lugar, ¿existe un algoritmo y una implementación existente que sea más adecuada para la clasificación no destructiva?

Necesita ordenar una matriz de flotantes en una nueva matriz sin cambiar la fuente. Los resultados de mi búsqueda fueron bastante escasos, ya que la mayor parte de la literatura se centra en reducir los requisitos de memoria con la clasificación en el lugar.

Usar el nativo sorted = [].slice().sort() funciona bien . Esta pregunta se trata de comprender si hay otras implementaciones de clasificación de rendimiento cuando se eliminan las restricciones de memoria, ya que de todos modos se necesita una nueva matriz.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Hay una sintaxis más simple para ordenar inmutablemente una matriz usando el operador de distribución ES6:

 [...array].sort(sortFn)
over 4 years ago · Santiago Trujillo Denunciar

0

Como los comentarios han repetido un par de veces:

  1. shuffledArray.slice().sort() es la forma predeterminada de proceder.
  2. No está muy claro cómo podríamos tener un mejor algoritmo/método usando las bibliotecas que mencionaste.

Al ver que la motivación para la clasificación no destructiva está relacionada con la escritura de código funcional, y está mirando a Ramda... consulte la biblioteca ImmutableJS de Facebook si aún no lo ha hecho.

En particular, la Seq . Puede comenzar a almacenar su matriz de flotadores en un Seq , ordenarlo y asegurarse de que el Seq original permanezca en el orden correcto. Además, utiliza la evaluación perezosa. http://facebook.github.io/immutable-js/docs/#/Seq
http://facebook.github.io/immutable-js/docs/#/Seq/sortBy

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda