Bubble Lajittelun toteutus C: ssä koodilla



Tämä artikkeli antaa sinulle yksityiskohtaisen ja kattavan tiedon B-lajittelusta C: ssä algoritmin ja työkoodin kanssa.

C-muodossa oleva kuplalajittelu on yksinkertainen lajittelualgoritmi, joka vertaa toistuvasti annetun taulukon vierekkäisiä elementtejä ja vaihtaa ne, jos ne ovat väärässä järjestyksessä. Saatat miettiä nimeä Bubble Sort. Tässä artikkelissa käsitellään viitteitä:

Mikä on kuplalajittelu C: ssä?

Lajittelutekniikkaa kutsutaan siten, että algoritmi toimii kuin kupla, kevyemmät elementit nousevat ylös ja raskaammat elementit asettuvat. Bubble Sort -algoritmi lajittelee luettelon passina. Nyt lajittelemaan n elementtiä sisältävä luettelo Bubble sort vaatii n-1 läpikulun. Selvyyden vuoksi ymmärretään tämä vaihe vaiheelta.





Bubble-Sort-in-C

Bubble Sort -algoritmi

  • Pass 1 :
    • X [0] ja X [1] verrataan ja vaihdetaan, jos X [0]> X [1]
    • X [1] ja X [2] verrataan ja vaihdetaan, jos X [1]> X [2]
    • X [2] ja X [3] verrataan ja vaihdetaan, jos X [2]> X [3] ja niin edelleen & hellip
    • Hyväksynnän 1 lopussa luettelon suurin osa sijoitetaan luettelon korkeimpaan hakemistoon.
  • Pass 2:
    • X [0] ja X [1] verrataan ja vaihdetaan, jos X [0]> X [1]
    • X [1] ja X [2] verrataan ja vaihdetaan, jos X [1]> X [2]
    • X [2] ja X [3] verrataan ja vaihdetaan, jos X [2]> X [3] ja niin edelleen & hellip
    • Pass 2: n lopussa luettelon toiseksi suurin osa sijoitetaan luettelon toiseksi korkeimpaan hakemistoon.
  • Pääsy n-1:
    • X [0] ja X [1] verrataan ja vaihdetaan, jos X [0]> X [1]
    • X [1] ja X [2] verrataan ja vaihdetaan, jos X [1]> X [2]
    • X [2] ja X [3] verrataan ja vaihdetaan, jos X [2]> X [3] ja niin edelleen & hellip
    • Tämän passin lopussa. Luettelon pienin osa sijoitetaan luettelon ensimmäiseen hakemistoon.

Esimerkki kuplalajittelusta luokassa C.

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



Pass 1

  • ( -5, 35 , 2, 13, -15) -> ( -5, 35 , 2, 13, -15), Tässä algoritmi vertaa kahta ensimmäistä elementtiä.
  • (-5, 35, 2 , 13, -15) -> (-5, 2, 35 , 13, -15), Vaihda vuodesta 35> 2
  • (-5, 2, 35, 13 , -15) -> (-5, 2, 13, 35 , -15), Vaihda vuodesta 35> 13
  • (-5, 2, 13,35, -15) -> (-5, 2, 13,-15, 35), Vaihda vuodesta 35> -15

Viimeinen elementti on suurin elementti.

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), Vaihda vuodesta 13> -15

Toinen viimeinen elementti on toiseksi suurin elementti.

luo parametri taulukkoon

Pass 3

  • ( -5, 2 , -15, 13, 35) -> ( -5, 2 , -15, 13, 35)
  • (-5, 2, -15 , 13, 35) -> (-5, -15, 2 , 13, 35), Vaihda vuodesta 2> -15

Kolmas viimeinen elementti on kolmanneksi suurin elementti.

Pass 4

mikä on java
  • ( -5, -15 , 2, 13, 35) -> ( -15, -5 , 2, 13, 35), Vaihda vuodesta -5> -15

Lopulta ensimmäinen on pienin & 2 nd on matriisin toiseksi pienin elementti. Joten tässä tapauksessa vaadittiin neljä läpäisyä 5 elementin matriisin lajittelemiseksi.

Ennen kuin tarkastelemme algoritmia yksityiskohtaisesti, tarkastellaan Bubble Sort in C -algoritmin ajan monimutkaisuutta.

Bubble Lajittelun monimutkaisuus

  • Pahimman tapauksen monimutkaisuus:Päällä2)
  • Parhaan tapauksen monimutkaisuus:Päällä2)
  • Keskimääräinen tapauksen monimutkaisuus:Päällä)

Katsokaamme nyt algoritmia nopeasti, jotta voimme edetä eteenpäin kirjoittamalla Bubble-lajittelualgoritmin C: ksi.

Kuplan lajittelutoiminto

void bubbleSort (int-taulukko [], int n) {int i, j // Siirrä kuplalajittelussa (i = 0 i

Kuplalajittelu C-ohjelmassa

#include // Funktio elementtien vaihtamiseksi void swap (int * a, int * b) {int temp = * a * a = * b * b = temp} // kuplalajittelutoiminto void bubbleSort (int-taulukko [], int n ) {int i, j (i = 0 i.)

Sorted-Array

Nyt kun olet suorittanut yllä olevan C-ohjelman, olisit ymmärtänyt, miten Bubble Sort toimii ja miten se toteutetaan C-kielellä. Toivon, että tämä blogi on informatiivinen ja lisäarvoa sinulle.

Katso Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Edurekan Java J2EE- ja SOA-koulutus- ja sertifiointikurssi on suunniteltu opiskelijoille ja ammattilaisille, jotka haluavat olla Java-kehittäjiä. Kurssi on suunniteltu antamaan sinulle etumatka Java-ohjelmointiin ja kouluttamaan sekä ydin- että edistyneitä Java-konsepteja sekä erilaisia ​​Java-kehyksiä, kuten Hibernate & Spring.

Onko sinulla kysymys meille? Mainitse se tämän Bubble Sort in C -artikkelin kommenttiosassa ja otamme sinuun yhteyttä mahdollisimman pian.