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

174
Vistas
¿Cómo puedo hacer una clasificación de burbujas para formar una matriz con un objeto?

Hay una tarea para realizar la clasificación de matrices a través de la clasificación de burbujas. Simplemente no puedo entender cómo es exactamente necesario implementar la clasificación de dicha matriz, en qué objetos. ¿Puede alguien ayudarme, por favor? Necesito ordenar por data.year.

 const [table, setTable] = useState([ { text: "Пошел в свой первый класс", id: 0, data: { year: 2012, day: 25, month: 1, }, }, { text: "Поехал на чемпионат по бейсболу", id: 1, data: { year: 2018, day: 14, month: 3, }, }, { text: "Поступил в институт", id: 2, data: { year: 2007, day: 12, month: 4, }, }, ]);
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Compare el año en lugar del objeto en el algoritmo de clasificación de burbujas

 //Bubble sort algorithm const bubbleSort = array => { const arr = Array.from(array); // avoid side effects for (let i = 1; i < arr.length; i++) { for (let j = 0; j < arr.length - i; j++) { if (arr[j].data.year > arr[j + 1].data.year) { //Added check inside object "data.year" [arr[j], arr[j + 1]] = [arr[j + 1], arr[j]]; } } } return arr; }; const myArr = [ { text: 'Пошел в свой первый класс', id: 0, data: { year: 2012, day: 25, month: 1, }, }, { text: 'Поехал на чемпионат по бейсболу', id: 1, data: { year: 2018, day: 14, month: 3 } }, { text: 'Поступил в институт', id: 2, data: { year: 2007, day: 12, month: 4 }, }, ] console.log(bubbleSort(myArr))

about 4 years ago · Juan Pablo Isaza Denunciar

0

Esto devolverá la matriz ordenada

 function bblSort(arr) { for (var i = 0; i < arr.length; i++) { for (var j = 0; j < arr.length - i - 1; j++) { if (arr[j].data.year > arr[j + 1].data.year) { var temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } return(arr); } var arr = [ { text: "Пошел в свой первый класс", id: 0, data: { year: 2012, day: 25, month: 1, }, }, { text: "Поехал на чемпионат по бейсболу", id: 1, data: { year: 2018, day: 14, month: 3, }, }, { text: "Поступил в институт", id: 2, data: { year: 2007, day: 12, month: 4, }, }, ];

about 4 years ago · Juan Pablo Isaza Denunciar

0

Use .sort de JS para ordenarlo, por ejemplo, ...useState([...].sort((item1, item2) => item1.data.year - item2.data.year)) toma una función de comparación como primer argumento , si no pasa ninguna función, intentará ordenarla lexicográficamente.

Pero aún así hará una ordenación rápida o combinada dependiendo del tamaño de la matriz. Si desea que haga una clasificación de burbujas por algún motivo, debe escribir la función de clasificación manualmente.

Acerca de las clasificaciones: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#examples

about 4 years ago · Juan Pablo Isaza 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