Problema
Retorne o maior valor da lista verificando cada elemento uma vez.
Implemente array_maximum(numbers).
Entrada
numbers: Uma lista não vazia de inteiros.
Saída
Retorne o valor máximo.
Restrições
1 ≤ comprimento ≤ 100.000
Exemplos
Entrada:
numbers = [3, 9, 2]
Saída esperada:
expected = 9
Entrada:
std::vector<long long> numbers = {3, 9, 2};
Saída esperada:
long long expected = 9;
Entrada:
long[] numbers = new long[] {3, 9, 2};
Saída esperada:
long expected = 9;
Explicação
9 é maior que 3 e 2.
Entrada:
numbers = [-4, -1, -7]
Saída esperada:
expected = -1
Entrada:
std::vector<long long> numbers = {-4, -1, -7};
Saída esperada:
long long expected = -1;
Entrada:
long[] numbers = new long[] {-4, -1, -7};
Saída esperada:
long expected = -1;
Explicação
Com apenas valores negativos, -1 é o maior.
Como abordar
Tente sozinho primeiro e depois abra uma dica de cada vez.
Dica 1
Comece com o primeiro elemento como melhor valor atual.
Dica 2
Percorra a lista uma vez e atualize o melhor valor sempre que encontrar um maior.
Dica 3
Não assuma que os valores são positivos; negativos também podem ser o máximo.
Complexidade esperada
tempo O(n), espaço extra O(1)
Referências
Este desafio foi adaptado para o CodeUtility. Siga o enunciado e as restrições acima.