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

122
Vistas
¿Cómo realizar un seguimiento de los rangos continuos y validar los nuevos antes de insertar una matriz de JavaScript?

tenemos algunos rangos de frecuencia en una matriz 2D. las matrices internas mantienen los límites superior e inferior de la frecuencia, y la matriz externa es una lista de rangos ordenados:

 /* [ [L0,U0], [L1,U1], [L2,U2] ] */ let freqList = [ [272.50,275.86], [279.18,283.34], [288.78,293.12] ]

los nuevos rangos no deben superponerse a los guardados, ¿cómo puedo validar los nuevos y llevarlos al índice de matriz exacto?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Creo que solo necesita encontrar el primer índice de modo que su número más bajo sea mayor que su número más bajo. Asegúrate de que tu número mayor también sea menor que su número menor. Asegúrate de que el número mayor de los elementos anteriores sea menor que tu número menor. Luego córtalo en ese índice:

 let freqList = [ [272.50,275.86], [279.18,283.34], [288.78,293.12] ] const addRange = (min, max) => { if (min > max) { throw new Error('invalid') } // find the first element where the min element is greater than the current min // this could be a binary search if you need to care about performance const i = freqList.findIndex(el => el[0] >= min); if (i === -1) { freqList.push([min, max]); } if (max >= freqList[i][0] || (i !== 0 && min < freqList[i-1][1])) { throw new Error('invalid') } freqList.splice(i, 0, [min, max]); } addRange(100, 200) console.log('ok') try { addRange(0, 101); } catch(e) { console.log('invalid range caught') } try { addRange(199, 201); } catch(e) { console.log('invalid range caught') }

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