Kā ieviest Bubble Sort Python?



Šajā emuārā jūs uzzināsiet kodu un paskaidrojumu par Python saraksta šķirošanu, izmantojot burbuļu kārtošanu, izmantojot maiņas metodi.

Kārtošana nozīmē jebkādu datu sakārtošanu pieaugošā vai dilstošā secībā atbilstoši kādai lineārai sakarībai starp elementiem. Šis raksts par Bubble Sort in palīdzēs jums detalizēti izprast šo jēdzienu.

Šajā emuārā mēs aplūkosim šādas tēmas:





Kas ir Bubble Sort?

Burbuļu šķirošana ir pazīstama arī kā grimšanas kārtība. Tas ir vienkāršs šķirošanas algoritms, kas nepārtraukti pārlūko kārtojamo sarakstu, salīdzinot katru blakus esošo priekšmetu pāri un nomainot tos, ja tie nav pareizā secībā. Darbības tiek atkārtotas, līdz vairs nav nepieciešami mijmaiņas darījumi, tas ir, kad saraksts ir sakārtots.

Burbuļu kārtošanas darbības

  • Salīdziniet pirmo un otro elementu sarakstā un nomainiet, ja tie ir nepareizā secībā.
  • Salīdziniet otro un trešo elementu un nomainiet tos, ja tie ir nepareizā secībā.
  • Līdzīgi rīkojieties līdz saraksta pēdējam elementam.
  • Atkārtojiet visas iepriekš minētās darbības, līdz saraksts ir sakārtots.

Iepriekš minētās darbības būs skaidrākas, izmantojot šādas vizualizācijas:



Burbuļu šķirošana Python - Edureka



Burbuļu šķirošanas algoritms

Tagad apskatīsim algoritmu aiz burbuļu šķirošanas.

Pirmā piespēle:

( 16.19 , 11,15,10) -> ( 16.19 , 11,15,10) - algoritms salīdzina pirmos divus elementus un mijmaiņas pasākumus kopš 19> 16

(16, 19.11 , 15.10) -> (16, 11.19 , 15.10) - Mainīt kopš 19> 11

pārtraukt programmu java

(16.11, 19.15 , 10) -> (16,11, 15.19 , 10) - nomainīt kopš 19> 15

(16,11,15, 19.10 ) -> (16,11,15, 10.19 ) - Tā kā šie elementi jau ir pareizā secībā (19> 10), algoritms tos nemaina.

Otrā piespēle:

izveidot objektu masīvu

( 16.11 , 15,10,19) -> ( 11.16 , 15,10,19) - nomainīt kopš 16> 11

(vienpadsmit, 16.15 , 10.19) -> (11, 15.16 , 10,19) - nomainīt kopš 16> 15

(Plkst. 11.15, 16.10 , 19) -> (11,15, 10.16 , 19) - nomainīt kopš 16> 10

(11,15,10,16,19) -> (11,15,10,16,19)

The ir sakārtots, bet mūsu algo nezina, vai tas ir pabeigts. Tādējādi, lai zinātu, ka tā ir sakārtota, tai ir nepieciešama vēl viena vesela caurlaide bez jebkādas mijmaiņas.

Trešā piespēle:

(vienpadsmit, 15.10 , 16,19) -> (11, 15.10 , 16,19)

(vienpadsmit, 15.10 , 16,19) -> (11, 10.15 , 16,19) - nomainīt kopš 15> 10

(11,10,15,16,19) -> (11,10,15,16,19)

(11,10,15,16,19) -> (11,10,15,16,19)

Ceturtā piespēle:

( 11.10 , 15,16,19) -> ( 10.11 , 15,16,19) - nomainīt kopš 11> 10

Galīgā produkcija ir (10,11,15,16,19)

Tagad kodēsim to -

sekla vs dziļa kopija java

Python programma, lai ieviestu Bubble Sort

a = [16, 19, 11, 15, 10, 12, 14]

#atkārtota cilpa len (a) (elementu skaits) reižu skaits j diapazonā (len (a)): # sākotnēji nomainīts ir nepatiesi nomainīts = False i = 0, savukārt ia [i + 1]: # swapping a [i ], a [i + 1] = a [i + 1], a [i] #Mainītā mijmaiņas vērtības maiņa = True i = i + 1 # ja mijmaiņa ir nepatiesa, tad saraksts ir sakārtots # mēs varam apturēt cilpu ja nomainīts == False: break print (a)
 REZULTĀTS: 


Iepriekš minētajā kodā mēs salīdzinām blakus esošos skaitļus un apmainām tos, ja tie nav pareizajā secībā. Atkārtojiet to pašu procesu len (a) reižu skaitu. Mēs esam piešķīruši mainīgo “apmainīt” un padarījuši to “Patiesu”, ja iterācijā tiek nomainīti divi elementi. Un, ja elementi netiek savstarpēji apmainīti, saraksts jau ir sakārtots un līdz ar to ‘mainītā’ vērtība nemainās, un mēs varam pārtraukt cilpu.

Ar to mēs esam nonākuši pie emuāra ar nosaukumu “Kā ieviest burbuļu kārtošanu Python”. Es ceru, ka saturs sniedz jūsu Python zināšanām pievienoto vērtību.

Pārliecinieties, ka pēc iespējas vairāk praktizējat un atgriezieties pie pieredzes.

Vai mums ir jautājums? Lūdzu, pieminējiet to šī emuāra “Kā ieviest burbuļu kārtošanu Python” komentāru sadaļā, un mēs pēc iespējas ātrāk sazināsimies ar jums.

Lai iegūtu padziļinātas zināšanas par Python kopā ar dažādām lietojumprogrammām, varat reģistrēties tiešraidē ar diennakts atbalstu un piekļuvi mūža garumā.