O algoritmo de classificação de seleção classifica a lista encontrando o menor número da lista não classificada e movendo -a na lista classificada. O tipo de seleção divide a lista real em duas listas, uma para números classificados enquanto a segunda lista é para os números não classificados restantes, inicialmente consideramos a lista inteira como uma lista não classificada.
O tipo de seleção funciona em uma filosofia muito básica que é encontrar o menor número da matriz e trocá -lo para a posição inicial (0º índice), então encontre novamente o segundo menor número da matriz não classificada restante e coloque -a na posição apropriada ( primeiro índice) e assim por diante, dessa maneira finalmente, teremos uma matriz classificada.
Neste artigo, discutiremos como o tipo de seleção funciona, para esse fim, consideraremos um exemplo para explicar cada etapa para classificar uma matriz usando o tipo de seleção.
Como funciona a classificação da seleção
Por exemplo, considere a seguinte matriz e classifique -a usando a seleção:
Passo 1
Inicialmente, temos uma matriz de cinco elementos, no índice zero, temos um valor '9', e o compararemos com o próximo índice, se o valor do primeiro índice for menor que o valor do índice zero e depois o próximo Comparará o valor do índice 1 com os restantes elementos da matriz.
Comparamos '1' com '8', '1' é menor que '8', então novamente compararemos '1' com o valor do próximo índice (3º índice),
'1' é menor que '2'.
Isso significa que novamente '1' será comparado com o último índice em que encontramos um valor '4', que também é maior que '1'.
Então, passo a passo, comparamos 1 com cada elemento da matriz, como resultado, testemunhamos que '1' é o menor número entre todos os elementos da matriz.
Então, finalmente, obtivemos um valor classificado para o índice 0.
Passo 2:
Agora, após a etapa 1, o valor no índice zero é classificado, então temos duas matrizes agora, no lado esquerdo, uma matriz classificada e, no lado direito, uma matriz não classificada:
Vamos classificar a matriz não classificada, então inicialmente compararemos o índice um com o índice dois, descobrimos que '9' é maior que '8'
Como '8' é menor que '9', então daqui compararemos o valor do índice 2, que é '8' com os outros elementos da matriz. Agora '8' é comparado com '2'
'2' é menor que '8', portanto, na próxima iteração que compararemos '2' com os últimos elementos da matriz. Compare '2' com '4':
Portanto, '2' é o menor elemento entre todos os elementos da matriz não classificado, portanto, será trocado no segundo índice, a matriz resultante após a segunda etapa será:
etapa 3
Até agora, temos 2 elementos classificados enquanto ainda, três elementos não são classificados, agora classificaremos os elementos não classificados restantes da matriz, para esse fim, compararemos o valor do índice 2 com o valor do índice 3; portanto, não haverá alteração Como '8' é menor que '9' e na próxima iteração, comparamos '8' com o valor do índice final.
Compare '8' com '4', aqui '4' é menor que '8' e '4' é o último elemento da matriz, portanto, '4' será trocado por '8': e a matriz atualizada será:
Passo 4:
Agora, os três primeiros elementos são classificados, compare o valor do índice 3 com o valor do índice 4, aqui '9' é maior que '8' e não há mais elemento restante na matriz para a comparação; portanto, trocamos o Valor do Forth Índice com o valor do terceiro índice:
Finalmente, obtemos uma matriz classificada, além disso, se alguém for instruído a classificar em ordem decrescente, ela será feita em ordem inversa, encontrando o valor máximo.
Como implementar a seleção de classificação em javascript
Agora, concluiremos o funcionamento da classificação de seleção em termos de cada etapa ou passagem e depois implementaremos o mesmo conceito em JavaScript.
Depois de concluir a primeira etapa, obtemos valor mínimo no 0º índice, na segunda etapa o segundo menor número é deslocado no primeiro índice, da mesma forma que obtemos um número adequado no índice adequado depois de concluir a terceira e quarta etapa, não vamos Não preciso executar a classificação para o último índice, pois temos apenas um elemento e, se todos os elementos anteriores da matriz forem classificados, o último elemento também será classificado. Por isso, concluímos que exigimos um total de passes "n-1" para classificar uma matriz. Agora, implementaremos esse conceito de seleção em JavaScript:
função seleção_sort (input_array)Na parte inicial do código, utilizamos o “.Propriedade de comprimento ”para verificar o comprimento da matriz real e armazená-la em uma variável“ Array_length ”, então iteramos o loop até atingir o índice“ N-1 ”. No loop inicialmente, consideramos que o índice atual tem o menor valor; portanto, definimos “menor = i” e, em seguida, usamos outro loop para comparar o valor atual com os valores restantes da matriz, e o loop irá começar de "i+1". Em seguida, escrevemos o código para trocar o elemento assim que encontramos o menor elemento da matriz.
Finalmente, utilizamos o console.Função de log para imprimir a saída no console do navegador:
Conclusão
Neste artigo, aprendemos a classificar uma matriz usando a seleção em JavaScript. No algoritmo de classificação de seleção, escolhemos o primeiro elemento da lista ou matriz e o comparamos com o restante dos elementos da matriz quando encontramos o menor elemento, mudamos para o índice inicial, então alteramos o segundo elemento para o primeiro índice, E assim por diante, como resultado, temos uma matriz em que os elementos classificados estão presentes no lado esquerdo e os elementos não classificados estão presentes no lado direito da matriz. Dessa forma, uma matriz final classificada é construída usando a classificação de seleção em JavaScript. Entendemos a lógica por trás do algoritmo de classificação de seleção, considerando um exemplo e explicando seu funcionamento passo a passo. Uma vez que entendemos como o tipo de seleção funciona, então implementamos no JavaScript.