Hogyan lehet a Bubble Sort C-ben megvalósítani kóddal

Ez a cikk részletes és átfogó ismereteket nyújt a C buborékos rendezésről az algoritmus és a munkakód segítségével.

A buborékos rendezés C-ben egy egyszerű rendezési algoritmus, amely ismételten összehasonlítja az adott tömb szomszédos elemeit és felcseréli őket, ha rossz sorrendben vannak. Lehet, hogy kíváncsi a Bubble Sort névre. Az alábbiakban bemutatjuk a cikkben szereplő mutatókat:



Mi a buborék rendezés C-ben?

A rendezési technikát azért hívják, mert az algoritmus buborékként viselkedik, a könnyebb elemek feljönnek és a nehezebb elemek leülepednek. A Bubble Sort algoritmus menetenként rendezi a listát. Most egy n elemű lista rendezéséhez a buborék rendezéséhez n-1 lépés szükséges. Hogy világosabb legyen, értsük meg ezt lépésről lépésre.



Bubble-Sort-in-C

A Bubble Sort algoritmusa

  • 1. passz :
    • X [0] és X [1] összevetjük és felcseréljük, ha X [0]> X [1]
    • X [1] és X [2] összevetjük és felcseréljük, ha X [1]> X [2]
    • X [2] és X [3] összevetik és felcserélik, ha X [2]> X [3] és így tovább & hellip
    • Az 1. lépés végén a lista legnagyobb eleme a lista legmagasabb indexéhez kerül.
  • 2. bérlet:
    • X [0] és X [1] összevetjük és felcseréljük, ha X [0]> X [1]
    • X [1] és X [2] összevetjük és felcseréljük, ha X [1]> X [2]
    • X [2] és X [3] összevetik és felcserélik, ha X [2]> X [3] és így tovább & hellip
    • A 2. passz végén a lista második legnagyobb eleme a lista második legmagasabb indexéhez kerül.
  • N-1 passz:
    • X [0] és X [1] összevetjük és felcseréljük, ha X [0]> X [1]
    • X [1] és X [2] összevetjük és felcseréljük, ha X [1]> X [2]
    • X [2] és X [3] összevetik és felcserélik, ha X [2]> X [3] és így tovább & hellip
    • Ennek a passznak a végén. A lista legkisebb eleme a lista első indexében található.

Példa a buborék rendezésére C-ben

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



1. passz

  • ( -5, 35 , 2, 13, -15) -> ( -5, 35 , 2, 13, -15), Itt az algoritmus összehasonlítja az első két elemet.
  • (-5, 35, 2 , 13, -15) -> (-5, 2, 35 , 13, -15), Csere 35-től> 2-ig
  • (-5, 2, 35, 13 , -15) -> (-5, 2, 13., 35 , -15), Csere 35> 13 óta
  • (-5, 2, 13,35, -15) -> (-5, 2, 13,-15, 35), Csere 35> -15 óta

Az utolsó elem a legnagyobb elem.

2. passz



  • ( -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), Csere 13> -15 óta

A második utolsó elem a második legnagyobb elem.

talend nyitott stúdió bemutató pdf

3. passz

  • ( -5, 2 , -15, 13, 35) -> ( -5, 2 , -15, 13, 35)
  • (-5, 2, -15 , 13, 35) -> (-5, -15, 2 , 13, 35), Csere 2-től -15-ig

A harmadik utolsó elem a harmadik legnagyobb elem.

4. passz

  • ( -5, -15 , 2, 13, 35) -> ( -15, -5 , 2, 13, 35), Csere -5> -15 óta

Végül az első a legkisebb & 2 nd a tömb második legkisebb eleme. Tehát ebben az esetben négy elemre volt szükség az 5 elemből álló tömb rendezéséhez.

Mielőtt részletesen megvizsgálnánk az algoritmust, nézzük meg a Bubble Sort in C algoritmus időbeli összetettségét.

A Bubble Sort összetettsége

  • Legrosszabb eset komplexitás:Tovább2)
  • Legjobb eset komplexitás:Tovább2)
  • Átlagos esetösszetétel:Tovább)

Most nézzük meg gyorsan az algoritmust, így tovább haladva megírhatjuk C-ben a Bubble sort algoritmust.

miért kellene megtanulnom az sql-t

Bubble Sort funkció

void bubbleSort (int tömb [], int n) {int i, j // Buborékban történő átadás (i = 0 i

Buborék rendezés C programban

#include // Funkció az elemek cseréjéhez void swap (int * a, int * b) {int temp = * a * a = * b * b = temp} // buborék rendezési funkció void bubbleSort (int tömb [], int n ) {int i, j for (i = 0 i

Sorted-Array

A fenti C program végrehajtása után megértette, hogyan működik a Bubble Sort, és hogyan kell C nyelven megvalósítani. Remélem, hogy ez a blog informatív és hozzáadott értéket jelent Önnek.

Nézze meg a az Edureka, egy megbízható online tanulási vállalat, amelynek több mint 250 000 elégedett tanulóval rendelkező hálózata elterjedt az egész világon. Az Edureka Java J2EE és SOA képzési és tanúsítási tanfolyamát olyan hallgatók és szakemberek számára tervezték, akik Java fejlesztők szeretnének lenni. A tanfolyamot úgy tervezték meg, hogy előrelépést nyújtson a Java programozásban, és képezze mind az alapvető, mind a fejlett Java koncepciókhoz, valamint a különböző Java keretrendszerekhez, például a Hibernate & Spring.

Van egy kérdésünk? Kérjük, említse meg ennek a C cikkben szereplő Bubble Sort megjegyzésének szakaszában, és a lehető leghamarabb kapcsolatba lépünk Önnel.