Analise o código JavaScript da função XPTO exibido a seguir.
function XPTO(valor, lista) {
var i = 0;
var posicao = -1;
for (i = 0; i < lista.length; i++) {
if (lista[i] == valor) {
posicao = i;
}
}
return posicao;
}
A função percorre um array contendo números inteiros e retorna a posição de um determinado número. Se esse número não é encontrado no array, a função retorna o valor -1. O número procurado e o array são fornecidos como parâmetros. Note que o código, como apresentado, executa tantos ciclos quantos forem os elementos na lista.
Por exemplo,
XPTO (11, [2, 1, 3, 4, 7, 8, 10, 12]) retornaria -1, e percorreria 8 ciclos.
XPTO (13, [1, 2, 3, 5, 8, 13, 21]) retornaria 5, e percorreria 7 ciclos.
XPTO (1, [1, 2]) retornaria 0, e percorreria 2 ciclos.
Pede-se
Considerando que o array fornecido jamais contém números repetidos, e que seus elementos estão sempre dispostos em ordem crescente, apresente uma nova versão do código dessa função de modo que o tempo de processamento (ou número de ciclos) diminua tanto quanto possível.
Note que a solução apresentada:
a) deve manter a assinatura original e a especificação da função original;
b) não pode utilizar funções/métodos de busca auxiliares;
c) não pode criar/utilizar índices/tabelas auxiliares;
c) deve manter a sintaxe JavaScript;
d) não deve conter comentários.
Serão avaliados:
a) a conformidade com a assinatura e a especificação original;
b) a correção da versão apresentada;
c) o grau de redução do tempo de processamento obtida.
CONTEÚDO EXCLUSIVO
Confira nossos planos especiais de assinatura e desbloqueie agora!
CONTEÚDO EXCLUSIVO
Confira nossos planos especiais de assinatura e desbloqueie agora!
Ops! Esta questão ainda não tem resolução em vídeo.
Questões Relacionadas
Texto I
A programação orientada a objetos (POO) é um paradigma de programação que preza pela organização do código em torno de objetos, que representam entidades do mundo real e possuem características e comportamentos. Por esse motivo, é considerado um dos paradigmas mais populares e utilizados na indústria de desenvolvimento de software.
Texto II
O código-fonte a seguir mostra a versão cliente de uma aplicação estruturada na arquitetura cliente-servidor, desenvolvido em Python.

Considerando as informações apresentadas no texto e no código-fonte em Python, elabore um texto dissertativo e argumentativo sobre orientação a objetos e redes de computadores abordando, necessariamente, os seguin…
Uma instituição pública deseja modernizar seu sistema interno de gestão de solicitações administrativas, atualmente baseado em planilhas e troca de e-mails. O novo sistema será desenvolvido como uma aplicação web, acessível a servidores e gestores, permitindo registro de novas solicitações (ex.: passagens, diárias, TI, manutenção); consulta e atualização do status; anexação de documentos; e visualização gerencial de pendências e tempos de atendimento.
A equipe de desenvolvimento decidiu adotar a arquitetura MVC (Model–View–Controller) para garantir separação de responsabilidades, baixa acoplamento e facilidade de manutenção.
No projeto, definiu-se que o Model representará entidades como Soli…
A Política de Dados Abertos do Poder Executivo Federal foi instituída pelo Decreto nº 8.777, de 11 de maio de 2016, e tem por objetivo a disponibilização na internet – por parte de órgãos e entidades da administração pública federal direta, autárquica e fundacional – de dados e informações acessíveis ao público que possam ser livremente lidos por máquina, usados, cruzados e reutilizados, fomentando-se o controle social, o desenvolvimento tecnológico, o aprimoramento da cultura de transparência pública e a inovação nos diversos setores da sociedade.
O Plano de Dados Abertos do Banco Central do Brasil (PDA/BC) estabelece o modelo de governança, diretrizes e orientações estratégicas e operacio…



