Hoe Bubble Sort in C met code te implementeren



Dit artikel geeft u een gedetailleerde en uitgebreide kennis van Bubble Sort in C met het algoritme en de werkende code.

Belsortering in C is een eenvoudig sorteeralgoritme dat de aangrenzende elementen van de gegeven array herhaaldelijk vergelijkt en ze verwisselt als ze in de verkeerde volgorde staan. Je vraagt ​​je misschien af ​​wat de naam Bubble Sort is. Hieronder volgen de aanwijzingen die in dit artikel worden behandeld:

Wat is een bubbelsortering in C?

De sorteertechniek wordt zo genoemd omdat het algoritme als een luchtbel werkt, de lichtere elementen naar boven komen en zwaardere elementen tot rust komen. Het Bubble Sort-algoritme sorteert de lijst in passen. Om een ​​lijst met n elementen te sorteren, heeft het sorteren van bellen n-1 slagen nodig. Laten we dit stap voor stap begrijpen om het duidelijker te maken.





Bubble-Sort-in-C

Algoritme van bellen sorteren

  • Passeer 1 :
    • X [0] en X [1] worden vergeleken en verwisseld als X [0]> X [1]
    • X [1] en X [2] worden vergeleken en verwisseld als X [1]> X [2]
    • X [2] en X [3] worden vergeleken, en verwisseld als X [2]> X [3] enzovoort & hellip
    • Aan het einde van pas 1 wordt het grootste element van de lijst op de hoogste index van de lijst geplaatst.
  • Pas 2:
    • X [0] en X [1] worden vergeleken en verwisseld als X [0]> X [1]
    • X [1] en X [2] worden vergeleken en verwisseld als X [1]> X [2]
    • X [2] en X [3] worden vergeleken, en verwisseld als X [2]> X [3] enzovoort & hellip
    • Aan het einde van pas 2 wordt het op een na grootste element van de lijst op de op een na hoogste index van de lijst geplaatst.
  • Pass n-1:
    • X [0] en X [1] worden vergeleken en verwisseld als X [0]> X [1]
    • X [1] en X [2] worden vergeleken en verwisseld als X [1]> X [2]
    • X [2] en X [3] worden vergeleken, en verwisseld als X [2]> X [3] enzovoort & hellip
    • Aan het einde van deze pas. Het kleinste element van de lijst wordt bij de eerste index van de lijst geplaatst.

Voorbeeld van bellen sorteren in C

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



Passeer 1

  • ( -5, 35 , 2, 13, -15) -> ( -5, 35 , 2, 13, -15), Algoritme vergelijkt hier de eerste twee elementen.
  • (-5, 35, 2 , 13, -15) -> (-5, 2, 35 , 13, -15), Wisselen sinds 35> 2
  • (-5, 2, 35, 13 , -15) -> (-5, 2, 13, 35 , -15), Wisselen sinds 35> 13
  • (-5, 2, 13,35, -15) -> (-5, 2, 13,-15, 35), Ruil sinds 35> -15

Het laatste element is het grootste element.

Pas 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), Ruil sinds 13> -15

Het voorlaatste element is het op een na grootste element.

is atoom goed voor python

Pas 3

  • ( -5, 2 , -15, 13, 35) -> ( -5, 2 , -15, 13, 35)
  • (-5, 2, -15 , 13, 35) -> (-5, -15, 2 , 13, 35), Ruil sinds 2> -15

Het derde laatste element is het derde grootste element.

Passeer 4

  • ( -5, -15 , 2, 13, 35) -> ( -15, -5 , 2, 13, 35), Wisselen sinds -5> -15

Uiteindelijk is de eerste de kleinste & 2 nd is het op een na kleinste element in de array. In dit geval waren er dus vier passages nodig om een ​​array van 5 elementen te sorteren.

Laten we, voordat we het algoritme in detail bekijken, eens kijken naar de tijdcomplexiteit van het Bubble Sort in C-algoritme.

De complexiteit van Bubble Sort

  • Complexiteit in het ergste geval:Aan2)
  • Complexiteit in het beste geval:Aan2)
  • Gemiddelde casuscomplexiteit:Aan)

Laten we nu snel naar het algoritme kijken, zodat we verder kunnen gaan met het Bubble sort-algoritme in C.

Bubble Sort-functie

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

Bellen sorteren in C-programma

#include // Functie om elementen te ruilen void swap (int * a, int * b) {int temp = * a * a = * b * b = temp} // bubble sort function void bubbleSort (int array [], int n ) {int i, j voor (i = 0 i

Sorted-Array

algoritme voor round robin-planning in c

Na het uitvoeren van het bovenstaande C-programma zou u hebben begrepen hoe Bubble Sort werkt en hoe u het in de C-taal kunt implementeren. Ik hoop dat deze blog informatief en een meerwaarde voor je is.

Bekijk de door Edureka, een vertrouwd online leerbedrijf met een netwerk van meer dan 250.000 tevreden leerlingen verspreid over de hele wereld. De training- en certificeringcursus Java J2EE en SOA van Edureka is bedoeld voor studenten en professionals die Java-ontwikkelaar willen worden. De cursus is bedoeld om u een voorsprong te geven in het programmeren van Java en u te trainen in zowel de kern als geavanceerde Java-concepten, samen met verschillende Java-frameworks zoals Hibernate & Spring.

Heeft u een vraag voor ons? Vermeld het in het opmerkingengedeelte van dit Bubble Sort in C-artikel en we nemen zo snel mogelijk contact met u op.