Introdução
Neste laboratório, trabalharemos com a função isSorted em JavaScript para determinar se um array numérico está ordenado em ordem ascendente ou descendente. Usaremos o método Math.sign() para converter o valor final da direção para -1 para ordem descendente e 1 para ordem ascendente. Também trataremos os casos em que o array está vazio, possui apenas um elemento ou a direção muda para qualquer par de elementos adjacentes do array.
Prática de Código: Verificar se um Array está Ordenado
Para praticar a codificação, abra o Terminal/SSH e digite node.
Aqui está uma função para verificar se um array numérico está ordenado:
const isSorted = (arr) => {
if (arr.length <= 1) return 0;
const direction = arr[1] - arr[0];
for (let i = 2; i < arr.length; i++) {
if ((arr[i] - arr[i - 1]) * direction < 0) return 0;
}
return Math.sign(direction);
};
Para usá-la, passe um array de números para isSorted(). A função retornará 1 se o array estiver ordenado em ordem ascendente, -1 se estiver ordenado em ordem descendente e 0 se não estiver ordenado.
Aqui estão alguns exemplos:
isSorted([0, 1, 2, 2]); // 1
isSorted([4, 3, 2]); // -1
isSorted([4, 3, 5]); // 0
isSorted([4]); // 0
Resumo
Parabéns! Você concluiu o laboratório "Array Is Sorted". Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.