10
Vamos encontrar o número central. Isso é 9. Podemos comparar 9 com o número que estamos procurando. 9 é igual ao número que estamos procurando.
Isso significa que nossa pesquisa pode parar. Conseguimos encontrar o número 9 em nossa lista! Como implementar uma pesquisa binária em JavaScriptAs pesquisas binárias podem ser implementadas usando uma abordagem iterativa ou recursiva. Pesquisa binária iterativa Uma pesquisa binária iterativa usa um loop while para encontrar um item em uma lista. Esse loop será executado até que o item seja encontrado na lista ou até que a lista seja pesquisada.
Vamos começar escrevendo uma função que realiza nossa pesquisa binária:
Vamos começar definindo duas variáveis: início e fim. Estes registram os valores mais altos e mais baixos com os quais nossa pesquisa está trabalhando. Usamos um while loop que é executado até que o número inicial seja maior que o número final. Esse loop calcula o número intermediário entre o início e o fim da lista.
Se o número que estamos procurando for igual ao número do meio, o número do meio é retornado ao nosso programa principal. o número é menor, o valor da semente é definido como o número do meio mais 1. Essas comparações são feitas usando uma instrução if .
Caso contrário, o número final é definido como o número do meio menos um. Se nosso número não for encontrado após a execução do loop while, ele retornará -1. Chamamos isso de condição básica. Em nosso programa principal, `vai verificar se o número retornado é igual a -1. é, significa que nosso número não foi encontrado.
Nossa função ainda não funciona. Precisamos escrever um programa principal para nomeá-lo: Definimos uma lista de números para pesquisar e o número que queremos encontrar em nossa lista. Em seguida, chamamos a função binarySearch. Isso fará nossa pesquisa. A pesquisa retornará -1 ou a posição do elemento que estamos procurando.
-1 indica que um item não foi encontrado. Se um elemento não for encontrado, o conteúdo de nossa instrução else será executado. Caso contrário, o conteúdo da instrução if é executado.
Vamos executar nosso código: Isso nos diz que nossa pesquisa foi bem-sucedida! Pesquisa binária recursiva Uma busca binária recursiva é considerada mais elegante do que uma busca iterativa. Isso ocorre porque as pesquisas binárias executam a mesma operação repetidamente em uma lista. Esse comportamento pode ser implementado usando um algoritmo de recursão.
Abra um novo arquivo JavaScript e cole este código: Este código faz as mesmas comparações que nossa primeira pesquisa. Verifique se o número do meio é igual, maior ou menor que o número que estamos procurando.
No início do nosso function , usamos uma instrução if para verificar se o número inicial é maior que o número final. Se for, isso significa que nosso item não foi encontrado na lista que especificamos. Neste caso, estamos retornando -1 ao programa principal.
Se o número que procuramos for igual ao número central, o número central é retornado ao programa principal. o número que estamos procurando for maior ou menor que o número central, nossa função de busca binária é executada novamente. Isso continua até que nosso elemento seja encontrado.
Para realizar esta função, precisaremos faça uma modificação em nosso programa principal: Precisamos passar mais dois parâmetros: os valores ‚Äã‚Äão de "start" e "end". O valor de "start" é igual a 0. O valor de "end" é igual ao comprimento da lista menos um.
Vamos executar nosso código e ver o que acontece: Nossa busca binária foi bem sucedida! Ele usa o mesmo algoritmo subjacente que a abordagem iterativa. A diferença é que a busca binária é realizada usando uma função chamada até que o item seja encontrado ou até que a busca na lista seja concluída, o que ocorrer primeiro. P> ConclusãoAs pesquisas binárias facilitam a localização de um item em uma lista. Cada vez que uma pesquisa é realizada, o número de itens restantes a serem encontrados em uma lista é reduzido pela metade. Isso torna uma pesquisa binária mais eficiente do que uma pesquisa linear.
Agora você está pronto para implemente a pesquisa binária em JavaScript como um especialista!
Shop
Learn programming in R: courses $
Best Python online courses for 2022 $
Best laptop for Fortnite $
Best laptop for Excel $
Best laptop for Solidworks $
Best laptop for Roblox $
Best computer for crypto mining $
Best laptop for Sims 4 $
Latest questions
NUMPYNUMPY
psycopg2: insert multiple rows with one query
12 answers
NUMPYNUMPY
How to convert Nonetype to int or string?
12 answers
NUMPYNUMPY
How to specify multiple return types using type-hints
12 answers
NUMPYNUMPY
Javascript Error: IPython is not defined in JupyterLab
12 answers
Wiki
Python OpenCV | cv2.putText () method
numpy.arctan2 () in Python
Python | os.path.realpath () method
Python OpenCV | cv2.circle () method
Python OpenCV cv2.cvtColor () method
Python - Move item to the end of the list
time.perf_counter () function in Python
Check if one list is a subset of another in Python
Python os.path.join () method
|