Hoe Bubble Sort in C-programmering te implementeren?

Hoe Bubble Sort In C Programmering Te Implementeren



Het sorteren van arrays of containers is een veelgebruikt proces bij het programmeren en C++ biedt verschillende sorteeralgoritmen om te implementeren. Onder hen, Bellen sorteren is het eenvoudigste en eenvoudigste algoritme om in C++ te implementeren.

Dit artikel bespreekt een eenvoudige manier om Bubble Sort te implementeren in C-programmering.

Wat is Bubble-Sort in C-programmering?

In Bellen soort , worden de elementen herhaaldelijk in volgorde gerangschikt, in oplopende of aflopende volgorde, afhankelijk van de voorkeur van de gebruiker. Het sorteerproces in C begint met het doorzoeken van de eerste index en het vergelijken van de eerste en tweede elementen. Als het eerste indexelement groter is dan het tweede, worden ze verwisseld. Hetzelfde vergelijkings- en uitwisselingsproces wordt herhaald voor het tweede indexelement en het derde element totdat alle elementen zijn gesorteerd.







Hoe Bubble Sorts werkt?

Hier is een stapsgewijze handleiding voor de implementatie Bellen sorteren in C.



Laten we de invoerarray eens bekijken {5, 3, 1, 4, 6} . Om deze array te sorteren met behulp van Bellen sorteren , volgen we de onderstaande passen:



Eerste Paas:

(5 3 1 4 6) -> (3 5 1 4 6), Ruil sinds 5 > 3





(3 5 1 4 6) -> (3 1 5 4 6), Ruil sinds 5 > 1

(3 1 5 4 6) -> (3 1 4 5 6), Ruil sinds 5 > 4



(3 1 4 5 6) -> (3 1 4 5 6), Geen ruil omdat alle elementen in orde zijn.

Tweede doorgang:

(3 1 4 5 6) -> (1 3 4 5 6), Ruil sinds 3 > 1

(1 3 4 5 6) -> (1 3 4 5 6), Geen ruil omdat alle elementen in orde zijn.

Derde doorgang:

(1 3 4 5 6) -> (1 3 4 5 6), Geen ruil omdat alle elementen in orde zijn.

De array is gesorteerd en het algoritme herkent dit na de derde doorgang omdat er geen swaps waren.

Programma van Bubble Sort in C

Het volgende is de uitvoering van Bellen sorteren bij C-programmering.

#include

int voornaamst ( ) {

int reeks [ 100 ] , N , X , En , S ;

printf ( 'Voer het aantal array-elementen in: ' ) ;

scannen ( '%D' , & N ) ;

printf ( 'Voer de waarden van de elementen in: ' ) ;

voor ( X = 0 ; X < N ; X ++ )

scannen ( '%D' , & reeks [ X ] ) ;

voor ( X = 0 ; X < N - 1 ; X ++ ) {

voor ( En = 0 ; En < N - X - 1 ; En ++ ) {

als ( reeks [ En ] > reeks [ En + 1 ] ) {

S = reeks [ En ] ;

reeks [ En ] = reeks [ En + 1 ] ;

reeks [ En + 1 ] = S ; }

}

}

printf ( 'Gesorteerde matrix na gebruik van bellensortering: ' ) ;

voor ( X = 0 ; X < N ; X ++ )

{

printf ( '%D ' , reeks [ X ] ) ;

}

opbrengst 0 ;

}

Het bovenstaande C-programma initialiseert eerst een array met een grootte van 100 elementen en vraagt ​​de gebruiker om de grootte in te voeren van de elementen die moeten worden gesorteerd, en voert vervolgens de elementen van de gebruiker een voor een in. De ingevoerde waarden in een array worden vervolgens gesorteerd met behulp van geneste lussen terwijl de code de elementen verwisselt als ze in de verkeerde volgorde staan. Ten slotte drukt het de gesorteerde array af met behulp van de for-lus.

Uitgang

Conclusie

Bellen soort is een sorteeralgoritme dat wordt gebruikt om de array in oplopende of aflopende volgorde te rangschikken door elk element van de array te vergelijken met het aangrenzende element en te matchen totdat het laatste element is gesorteerd. In de bovengenoemde richtlijnen leer je de basis van de Bellen soort algoritme en de implementatie ervan in C-programmering.