Como implementar a classificação por bolha em C com código



Este artigo fornecerá a você um conhecimento detalhado e abrangente do Bubble Sort em C com o algoritmo e o código de trabalho.

A classificação por bolha em C é um algoritmo de classificação simples que compara repetidamente os elementos adjacentes de uma determinada matriz e os troca se estiverem na ordem errada. Você pode estar se perguntando sobre o nome Bubble Sort. A seguir estão as dicas abordadas neste artigo:

O que é um Bubble Sort em C?

A técnica de classificação é chamada assim porque o algoritmo atua como uma bolha, os elementos mais leves surgem e os elementos mais pesados ​​se acomodam. O algoritmo de classificação por bolha classifica a lista em passagens. Agora, para classificar uma lista com n elementos, a classificação por bolha requer n-1 passes. Para deixar mais claro, vamos entender isso passo a passo.





Bubble-Sort-in-C

Algoritmo de Bubble Sort

  • Passe 1 :
    • X [0] e X [1] são comparados e trocados se X [0]> X [1]
    • X [1] e X [2] são comparados e trocados se X [1]> X [2]
    • X [2] e X [3] são comparados e trocados se X [2]> X [3] e assim por diante & hellip
    • No final da passagem 1, o maior elemento da lista é colocado no índice mais alto da lista.
  • Passe 2:
    • X [0] e X [1] são comparados e trocados se X [0]> X [1]
    • X [1] e X [2] são comparados e trocados se X [1]> X [2]
    • X [2] e X [3] são comparados e trocados se X [2]> X [3] e assim por diante & hellip
    • No final do Passo 2, o segundo maior elemento da lista é colocado no segundo índice mais alto da lista.
  • Passe n-1:
    • X [0] e X [1] são comparados e trocados se X [0]> X [1]
    • X [1] e X [2] são comparados e trocados se X [1]> X [2]
    • X [2] e X [3] são comparados e trocados se X [2]> X [3] e assim por diante & hellip
    • No final desta passagem. O menor elemento da lista é colocado no primeiro índice da lista.

Exemplo de classificação por bolha em C

Array: -5, 35, 2, 13, -15



Passe 1

  • ( -5, 35 , 2, 13, -15) -> ( -5, 35 , 2, 13, -15), Aqui, o algoritmo compara os dois primeiros elementos.
  • (-5, 35, 2 , 13, -15) -> (-5, 2, 35 , 13, -15), Trocar desde 35> 2
  • (-5, 2, 35, 13 , -15) -> (-5, 2, 13, 35 , -15), Trocar desde 35> 13
  • (-5, 2, 13,35, -15) -> (-5, 2, 13,-15, 35), Trocar desde 35> -15

O último elemento é o maior.

Passe 2



  • ( -5, 2 , 13, -15, 35) -> (- 5, 2 , 13, -15, 35)
  • (-5, 2, 13, 35, -15) -> (-5, 2, 13 , -15, 35)
  • (-5, 2, 13, -15 , 35) -> (-5, 2, -15, 13 , 35), Trocar desde 13> -15

O segundo último elemento é o segundo maior elemento.

programação de socket em exemplo java

Passe 3

  • ( -5, 2 , -15, 13, 35) -> ( -5, 2 , -15, 13, 35)
  • (-5, 2, -15 , 13, 35) -> (-5, -15, 2 , 13, 35), Trocar desde 2> -15

O terceiro último elemento é o terceiro maior elemento.

Passe 4

  • ( -5, -15 , 2, 13, 35) -> ( -15, -5 , 2, 13, 35), Troca desde -5> -15

Eventualmente, o primeiro é o menor & 2 nd é o segundo menor elemento da matriz. Portanto, neste caso, quatro passagens foram necessárias para classificar uma matriz de 5 elementos.

Antes de examinar o algoritmo em detalhes, vejamos a complexidade do tempo do algoritmo Bubble Sort em C.

A complexidade do Bubble Sort

  • Pior Caso Complexidade:Em2)
  • Melhor caso de complexidade:Em2)
  • Complexidade média do caso:Em)

Agora, vamos examinar rapidamente o algoritmo, de modo que, avançando, possamos escrever o algoritmo de classificação Bubble em C.

Função de classificação de bolhas

void bubbleSort (int array [], int n) {int i, j // Passe no Bubble Sort para (i = 0 i

Classificação por bolha no programa C

#include // Função para trocar elementos void swap (int * a, int * b) {int temp = * a * a = * b * b = temp} // função de classificação de bolha void bubbleSort (int array [], int n ) {int i, j for (i = 0 i

Sorted-Array

Agora, depois de executar o programa C acima, você terá entendido como o Bubble Sort funciona e como implementá-lo na linguagem C. Espero que este blog seja informativo e tenha valor agregado para você.

alocação de memória dinâmica em c ++ com programa de exemplo

Confira o pela Edureka, uma empresa de aprendizagem online confiável com uma rede de mais de 250.000 alunos satisfeitos espalhados por todo o mundo. O curso de certificação e treinamento Java J2EE e SOA da Edureka é projetado para estudantes e profissionais que desejam ser um desenvolvedor Java. O curso foi desenvolvido para dar a você uma vantagem inicial na programação Java e treiná-lo para os conceitos básicos e avançados de Java, juntamente com várias estruturas Java, como Hibernate e Spring.

Tem alguma questão para nós? Mencione isso na seção de comentários deste artigo do Bubble Sort em C e entraremos em contato com você o mais breve possível.