Junior
Como ordenar apenas os números ímpares num array?
sobes.tech IA
Resposta da IA
- Filtrar o array, deixando apenas os números ímpares.
- Ordenar o array resultante de números ímpares.
- Percorrer o array original e substituir os números ímpares pelos ordenados, mantendo as suas posições iniciais.
// Array original
const arr = [5, 2, 8, 1, 4, 7, 6, 3, 9];
// Filtrar e ordenar os números ímpares
const oddSorted = arr.filter(num => num % 2 !== 0).sort((a, b) => a - b);
// Criar um novo array substituindo os números ímpares pelos ordenados
let oddIndex = 0;
const sortedArr = arr.map(num => {
if (num % 2 !== 0) {
return oddSorted[oddIndex++];
}
return num;
});
// sortedArr será [1, 2, 3, 8, 4, 5, 6, 7, 9]