Javascript de classificação de bolhas

| | | |

Como escrever um feitiço de bolha JavaScript

Você tem uma lista de valores ‚Äã‚Äãque você precisa classificar? A classificação de bolhas pode ser para você. As classificações de bolhas comparam itens adjacentes em uma lista e trocam suas posições se não estiverem na ordem correta.

Neste guia, falaremos sobre o que são bolhas e como elas funcionam. Veremos como escrever um Bubble Sort em JavaScript para que você possa começar rapidamente com esse gênero.

Vamos começar!

O que é um Bubble Sort JavaScript?

Uma espécie de bolha, ou "amortecimento de classificação", é um algoritmo de classificação simples, que compara um par de itens adjacentes em uma lista. Se um elemento não estiver em ordem, trocamos o elemento com o anterior. Caso contrário, o item permanece no mesmo local.

Tri Bubble recebeu esse nome porque rola por uma lista e move todos os valores mais importantes ‚Äã‚Äãpara o final. Outra maneira de pensar sobre isso é que os maiores valores ‚Äã‚Äã"borbulham" no final da lista. Os tipos de bolha funcionam em ordem crescente e decrescente

Existem dois tipos de bolhas: .. Regular e otimizado

Os tipos de bolha regulares fazem todas as comparações possíveis, não importa se uma matriz é classificada. Os tipos de bolhas otimizadas param de ser executados no final de uma iteração se nenhuma troca tiver ocorrido.

Procedimento JavaScript de classificação de bolhas

Começaremos falando sobre como as classificações de bolhas funcionam, e, em seguida, implemente um em JavaScript. Considere a seguinte lista de elementos:

9 3 2 11

Para iniciar nosso gênero, vamos comparar o primeiro e o segundo números. Se o primeiro número for maior que o segundo número, trocamos os elementos. Caso contrário, os elementos permanecem na mesma posição

9 é maior que 3 para que as posições dos dois primeiros elementos sejam trocadas:

3 < / td> 9 12 2

Este o processo continua até que todos os itens da lista sejam comparados.

9 não excede 12, então esses itens permanecem no mesmo lugar. 12 é maior que 2, então esses elementos se trocam:

< table class = "wp-bloc en table-info table">
3 9 2 12

Nossa lista começa a aparecer limpador. Nosso algoritmo repetiu a lista uma vez. Ele continuará a fazê-lo até que peçamos cada item. Na próxima iteração, nosso programa faz as seguintes comparações:

  • 3 é maior que 9? Não, nada está acontecendo.
  • 9 é maior que 2? Sim, então os itens são trocados.
  • 9 é maior que 12? Não, nada acontece.

Após esta iteração, nossa lista fica assim:.

< tr>
3 2 9 12 Estamos quase lá. Na próxima iteração, trocamos os dois primeiros itens, o que nos dá uma lista ordenada completa:

Conseguimos! Nós categorizamos uma lista usando a classificação de bolhas. Agora vem a parte complicada:. O trabalho de desenvolvimento deste algoritmo em JavaScript

Como escrever um algoritmo de ordenação de bolhas em JavaScript

Podemos escrever um algoritmo de ordenação de bolhas em JavaScript. Vamos criar dois tipos de bolhas: uma classificação normal e uma otimização de uma

classificação de bolhas regular

Vamos começar definindo um função JavaScript que executa nossa classificação de bolhas:

Esta função aceita um array de números e ordena usando o algoritmo bubble sort . Para começar, o algoritmo cria um loop que passa por cada elemento da lista

Nosso código usa o atributo length do array para calcular o comprimento da lista. , Em seguida, declaramos outro loop. Esse loop faz comparações entre cada item no list.

Para cada iteração de nosso loop interno, nosso programa executa uma instrução if. Essa instrução JavaScript if verifica se o número à esquerda de uma comparação é maior que o número à direita. Nesse caso, nosso programa troca os números. Caso contrário, nada acontece.

retorna a matriz ao programa principal após classificá-los. Vamos chamar nossa função e fornecer é um exemplo de matriz:

Declaramos Variáveis JavaSc ript chamadas numbersToSort que contém os dígitos que queremos para o pedido. Em seguida, chamamos nosso método sortItems() e adotamos essa variável como parâmetro. Isso classifica nossa lista. Imprimimos a nova lista ordenada no console JavaScript do navegador :. [2, 3, 9, 11]

ORDERS do nosso código de lista em ordem crescente. Podemos alterar esse comportamento substituindo o valor "maior que" para acessar nossa declaração "if" por um sinal "menos":

Estamos quase terminando! Vamos tornar nosso código mais eficiente implementando a bolha de classificação com uma variável trocada.

bolha otimizada Sort

bolha otimizada introduzida Classifique uma nova variável. Essa variável acompanha se a troca foi realizada. Tri stop se nenhuma troca ocorreu

Para tornar nossa bolha de gênero mais eficiente, substituiremos nosso loop externo por um loop while:

O loop while será executado até que "swapped" seja falso. Por padrão, o valor de "bolsa" é verdadeiro. Em cada iteração de nossa lista, definimos o valor de "swapped" como false. Se ocorrer uma troca, o valor de "swapped" retornará true

isso nos permite acompanhar se um a troca foi feita em uma iteração. Se nenhuma troca foi feita, significa que nossa lista está classificada. Nesse caso, podemos interromper nossa classificação por bolha.

Vamos tentar usar a classificação desta bolha:

Nosso código retorna:. [2, 3, 9, 11] lista é ordenada. este algoritmo é mais eficiente porque não realiza comparações desnecessárias. assim que a lista é classificado, o algoritmo para de funcionar.

Conclusão

Os tipos de bolhas são uma maneira fácil de classificar um C compare a lista de itens adjacentes em uma lista ou troque-os e se não estiverem na ordem correta.

Tipos mais eficientes estão disponíveis, como classificação por inserção ou classificação por mesclagem. Esses tipos são mais avançados. Os tipos de bolhas geralmente são a melhor maneira de começar a aprender sobre algoritmos de classificação .

Para obter mais informações sobre codificação em JavaScript, leia nosso Como aprender JavaScript Ajuda .

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