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 .

Esperamos que este artigo tenha ajudado você a resolver o problema. Além de Javascript de classificação de bolhas, confira outros tópicos relacionados a insert.

Quer se destacar em Python? Veja nossa análise dosmelhores cursos on-line de Python 2022. Se você estiver interessado em Ciência de Dados, veja também como aprender programação em R.

A propósito, este material também está disponível em outros idiomas:



Julia Chamberlet

London | 2022-12-01

Eu estava me preparando para minha entrevista de codificação, obrigado por esclarecer isto - Javascript de classificação de bolhas em Python não é o mais simples. Vou usá-lo na minha tese de bacharelado

Olivia Porretti

Abu Dhabi | 2022-12-01

sin está tudo um pouco confuso 😭 Javascript de classificação de bolhas não é o único problema que eu encontrei. Verificado ontem, funciona!

Marie Innsbruck

Vigrinia | 2022-12-01

Eu estava me preparando para minha entrevista de codificação, obrigado por esclarecer isto - Javascript de classificação de bolhas em Python não é o mais simples. Retornarei amanhã com feedback

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

Common xlabel/ylabel for matplotlib subplots

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

12 answers

NUMPYNUMPY

Flake8: Ignore specific warning for entire file

12 answers

NUMPYNUMPY

glob exclude pattern

12 answers

NUMPYNUMPY

How to avoid HTTP error 429 (Too Many Requests) python

12 answers

NUMPYNUMPY

Python CSV error: line contains NULL byte

12 answers

NUMPYNUMPY

csv.Error: iterator should return strings, not bytes

12 answers


Wiki

Python | How to copy data from one Excel sheet to another

Common xlabel/ylabel for matplotlib subplots

Check if one list is a subset of another in Python

sin

How to specify multiple return types using type-hints

exp

Printing words vertically in Python

exp

Python Extract words from a given string

Cyclic redundancy check in Python

Finding mean, median, mode in Python without libraries

cos

Python add suffix / add prefix to strings in a list

Why do I get "Pickle - EOFError: Ran out of input" reading an empty file?

Python - Move item to the end of the list

Python - Print list vertically