Kaip įdiegti burbulų rūšiavimą C su kodu



Šis straipsnis suteiks jums išsamių ir išsamių žinių apie burbulų rūšiavimą C, naudojant algoritmą ir darbo kodą.

B burbulų rūšiavimas C yra paprastas rūšiavimo algoritmas, kuris pakartotinai lygina gretimus duoto masyvo elementus ir keičia juos, jei jie yra neteisinga tvarka. Jums gali būti įdomu dėl pavadinimo „Bubble Sort“. Toliau pateikiami šiame straipsnyje pateikti rodikliai:

Kas yra burbulų rūšiavimas C?

Rūšiavimo technika vadinama todėl, kad algoritmas veikia kaip burbulas, atsiranda lengvesni elementai, o sunkesni elementai nusėda. „Bubble Sort“ algoritmas surūšiuoja sąrašą perduodamas. Dabar, norint rūšiuoti sąrašą su n elementu, „Bubble sort“ reikia n-1 leidimų. Kad būtų aiškiau, supraskime tai žingsnis po žingsnio.





Bubble-Sort-in-C

Burbulų rūšiavimo algoritmas

  • 1 leidimas :
    • X [0] ir X [1] yra lyginami ir keičiami, jei X [0]> X [1]
    • X [1] ir X [2] yra lyginami ir keičiami, jei X [1]> X [2]
    • X [2] ir X [3] lyginami ir keičiami, jei X [2]> X [3] ir taip toliau & hellip
    • 1 leidimo pabaigoje didžiausias sąrašo elementas dedamas į aukščiausią sąrašo indeksą.
  • 2 leidimas:
    • X [0] ir X [1] yra lyginami ir keičiami, jei X [0]> X [1]
    • X [1] ir X [2] yra lyginami ir keičiami, jei X [1]> X [2]
    • X [2] ir X [3] lyginami ir keičiami, jei X [2]> X [3] ir taip toliau & hellip
    • 2 leidimo pabaigoje antras pagal dydį sąrašo elementas patenka į antrą aukščiausią sąrašo indeksą.
  • N-1 leidimas:
    • X [0] ir X [1] yra lyginami ir keičiami, jei X [0]> X [1]
    • X [1] ir X [2] yra lyginami ir keičiami, jei X [1]> X [2]
    • X [2] ir X [3] lyginami ir keičiami, jei X [2]> X [3] ir taip toliau & hellip
    • Šio leidimo pabaigoje. Mažiausias sąrašo elementas dedamas į pirmąjį sąrašo indeksą.

Burbulų rūšiavimo C pavyzdys

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



1 leidimas

  • ( -5, 35 , 2, 13, -15) -> ( -5, 35 , 2, 13, -15), Čia algoritmas lygina pirmuosius du elementus.
  • (-5, 35, 2 , 13, -15) -> (-5, 2, 35 , 13, -15), Keisti nuo 35> 2
  • (-5, 2, 35, 13 , -15) -> (-5, 2, 13, 35 , -15), Keisti nuo 35> 13
  • (-5, 2, 13,35, -15) -> (-5, 2, 13,-15, 35), Keisti nuo 35> -15

Paskutinis elementas yra didžiausias elementas.

2 leidimas



  • ( -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), Keisti nuo 13> -15

Antrasis paskutinis elementas yra antras pagal dydį.

c ++ skambutis pagal nuorodą

3 leidimas

  • ( -5, 2 , -15, 13, 35) -> ( -5, 2 , -15, 13, 35)
  • (-5, 2, -15 , 13, 35) -> (-5, -15, 2 , 13, 35), Keisti nuo 2> -15

Trečias paskutinis elementas yra trečias pagal dydį elementas.

4 leidimas

  • ( -5, -15 , 2, 13, 35) -> ( -15, -5 , 2, 13, 35), Keisti nuo -5> -15

Galų gale, pirmasis yra mažiausias ir 2 nd yra antras pagal dydį masyvo elementas. Taigi, šiuo atveju norint surūšiuoti 5 elementų masyvą, reikėjo keturių leidimų.

Prieš pradėdami detaliau pažvelgti į algoritmą, pažvelkime į „Bubble Sort in C“ algoritmo sudėtingumą.

„Bubble Sort“ sudėtingumas

  • Blogiausio atvejo sudėtingumas:O (n2)
  • Geriausio atvejo sudėtingumas:O (n2)
  • Vidutinis atvejų sudėtingumas:O (n)

Dabar pažvelkime greitai į algoritmą, kad judėdami į priekį galėtume parašyti burbulų rūšiavimo algoritmą C.

Burbulų rūšiavimo funkcija

void bubbleSort (int masyvas [], int n) {int i, j // perduoti burbulų rūšiavimu (i = 0 i

Burbulų rūšiavimas C programoje

#include // Funkcija pakeisti elementus negaliojantis apsikeitimas (int * a, int * b) {int temp = * a * a = * b * b = temp} // burbulų rūšiavimo funkcija void bubbleSort (int masyvas [], int n ) {int i, j už (i = 0 i

Sorted-Array

Dabar, atlikę aukščiau nurodytą C programą, būtumėte supratę, kaip veikia „Bubble Sort“ ir kaip ją įgyvendinti C kalba. Tikiuosi, kad šis tinklaraštis yra informatyvus ir suteikia jums pridėtinės vertės.

kam naudojamas duomenų mokslas

Patikrinkite sukūrė patikima internetinė mokymosi įmonė „Edureka“, turinti daugiau nei 250 000 patenkintų besimokančiųjų tinklą visame pasaulyje. „Edureka“ „Java J2EE“ ir SOA mokymo ir sertifikavimo kursai yra skirti studentams ir specialistams, norintiems būti „Java“ kūrėjais. Kursas sukurtas tam, kad galėtumėte pradėti žvalgytis į „Java“ programavimą ir išmokyti pagrindines ir pažangesnes „Java“ koncepcijas kartu su įvairiomis „Java“ sistemomis, tokiomis kaip „Hibernate & Spring“.

Turite mums klausimą? Prašau tai paminėti šio „Bubble Sort“ C straipsnio komentarų skyriuje ir mes kuo greičiau susisieksime su jumis.