Hvordan implementere boblesortering i C med kode



Denne artikkelen vil gi deg en detaljert og omfattende kunnskap om Bubble Sort in C med algoritmen og arbeidskoden.

Boblesortering i C er en enkel sorteringsalgoritme som flere ganger sammenligner de tilstøtende elementene i den gitte matrisen og bytter dem hvis de er i feil rekkefølge. Du lurer kanskje på navnet Bubble Sort. Følgende er tipsene dekket i denne artikkelen:

Hva er en boblesortering i C?

Sorteringsteknikken kalles så fordi algoritmen fungerer som en boble, de lettere elementene kommer opp og tyngre elementer legger seg. Bubble Sort algoritme sorterer listen i passerer. Nå, for å sortere en liste med n elementer Bubblesortering krever n-1-passeringer. For å gjøre det tydeligere, la oss forstå dette trinn for trinn.





Bubble-Sort-in-C

Algoritme for boblesortering

  • Bestått 1 :
    • X [0] og X [1] sammenlignes, og byttes hvis X [0]> X [1]
    • X [1] og X [2] sammenlignes, og byttes hvis X [1]> X [2]
    • X [2] og X [3] sammenlignes, og byttes hvis X [2]> X [3] og så videre & hellip
    • På slutten av passering 1 plasseres det største elementet i listen på den høyeste indeksen på listen.
  • Pass 2:
    • X [0] og X [1] sammenlignes, og byttes hvis X [0]> X [1]
    • X [1] og X [2] sammenlignes, og byttes hvis X [1]> X [2]
    • X [2] og X [3] sammenlignes, og byttes hvis X [2]> X [3] og så videre & hellip
    • På slutten av Pass 2 er det nest største elementet i listen plassert på den nest høyeste indeksen på listen.
  • Pass n-1:
    • X [0] og X [1] sammenlignes, og byttes hvis X [0]> X [1]
    • X [1] og X [2] sammenlignes, og byttes hvis X [1]> X [2]
    • X [2] og X [3] sammenlignes, og byttes hvis X [2]> X [3] og så videre & hellip
    • På slutten av dette passet. Det minste elementet i listen er plassert i den første indeksen på listen.

Eksempel på boblesortering i C

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



Bestått 1

  • ( -5, 35 , 2, 13, -15) -> ( -5, 35 , 2, 13, -15), Sammenligner algoritme de to første elementene.
  • (-5, 35, 2 , 13, -15) -> (-5, 2, 35 , 13, -15), Bytt siden 35> 2
  • (-5, 2, 35, 13 , -15) -> (-5, 2, 13, 35 , -15), Bytt siden 35> 13
  • (-5, 2, 13,35, -15) -> (-5, 2, 13,-15, 35), Bytt siden 35> -15

Det siste elementet er det største elementet.

Pass 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), Bytt siden 13> -15

Det nest siste elementet er det nest største elementet.

hvordan lage et varsel i html

Pass 3

  • ( -5, 2 , -15, 13, 35) -> ( -5, 2 , -15, 13, 35)
  • (-5, 2, -15 , 13, 35) -> (-5, -15, 2 , 13, 35), Bytt siden 2> -15

Det tredje siste elementet er det tredje største elementet.

Pass 4

  • ( -5, -15 , 2, 13, 35) -> ( -15, -5 , 2, 13, 35), bytt siden -5> -15

Til slutt er den første den minste og 2 nd er det nest minste elementet i matrisen. Så i dette tilfellet var det nødvendig med fire passeringer for å sortere en matrise med 5 elementer.

Før vi ser på algoritmen i detalj, la oss se på tidskompleksiteten til Bubble Sort in C-algoritmen.

Kompleksiteten til Bubble Sort

  • Kompleksitet i verste tilfelle:2)
  • Beste sakskompleksitet:2)
  • Gjennomsnittlig sakskompleksitet:På)

La oss nå se på algoritmen, slik at vi kan skrive Bubble sorteringsalgoritmen i C.

hvordan lage et sett

Boblesorteringsfunksjon

void bubbleSort (int array [], int n) {int i, j // Pass i Bubble Sort for (i = 0 i

Boblesortering i C-program

#include // Funksjon for å bytte elementer ugyldig swap (int * a, int * b) {int temp = * a * a = * b * b = temp} // boblesorteringsfunksjon void bubbleSort (int array [], int n ) {int i, j for (i = 0 i

Sorted-Array

Nå etter å ha utført C-programmet ovenfor, ville du ha forstått hvordan Bubble Sort fungerer og hvordan du implementerer det på C-språk. Jeg håper denne bloggen er informativ og gir merverdi for deg.

Sjekk ut av Edureka, et pålitelig online læringsfirma med et nettverk med mer enn 250 000 fornøyde elever spredt over hele verden. Edurekas Java J2EE- og SOA-opplæring og sertifiseringskurs er designet for studenter og fagpersoner som ønsker å være Java-utvikler. Kurset er designet for å gi deg et forsprang i Java-programmering og trene deg for både kjerne- og avanserte Java-konsepter sammen med forskjellige Java-rammer som Hibernate & Spring.

Har du spørsmål til oss? Vennligst nevn det i kommentarfeltet i denne Bubble Sort in C-artikkelen, så kommer vi tilbake til deg så snart som mulig.