Sortiranje znači slaganje bilo kojih podataka u rastućem ili manjem redoslijedu prema nekom linearnom odnosu među elementima. Ovaj članak o Bubble Sort in pomoći će vam da detaljno razumijete ovaj koncept.
Na ovom ćemo blogu pokriti sljedeće teme:
- Što je Bubble sort?
- Koraci za izvođenje sortiranja mjehurića
- Algoritam sortiranja mjehurića
- Python program za implementaciju ent Razvrstavanje mjehurića
Što je sortiranje mjehurića?
Sorta mjehurića poznata je i kao sorta koja tone. To je jednostavan algoritam za sortiranje koji neprestano korača kroz popis radi razvrstavanja, uspoređujući svaki par susjednih predmeta i mijenjajući ih ako nisu u ispravnom redoslijedu. Koraci se ponavljaju sve dok više nisu potrebne zamjene, a to je kada se popis sortira.
što je tostring metoda u javi
Koraci za izvođenje sortiranja mjehurića
- Usporedite prvi i drugi element na popisu i zamijenite ih ako su u pogrešnom redoslijedu.
- Usporedite drugi i treći element i zamijenite ih ako su u pogrešnom redoslijedu.
- Nastavite slično do zadnjeg elementa popisa na sličan način.
- Ponavljajte sve gornje korake dok se popis ne sortira.
Gornji koraci bit će jasniji sljedećim vizualizacijama -
Algoritam sortiranja mjehurića
Pogledajmo sada algoritam iza sortiranja mjehurića.
Prvo dodavanje:
( 16.19 , 11,15,10) -> ( 16.19 , 11,15,10) - Algoritam uspoređuje prva dva elementa i zamjene od 19> 16
(16, 19.11 , 15.10) -> (16, 11.19 , 15.10) - Zamijeni od 19> 11
(16.11, 19.15 , 10) -> (16,11, 15.19 , 10) - Zamijeni od 19> 15
(16,11,15, 19.10 ) -> (16,11,15, 10.19 ) - Sada, budući da su ti elementi već u ispravnom redoslijedu (19> 10), algoritam ih ne zamjenjuje.
Drugi prolaz:
( 16.11 , 15,10,19) -> ( 11.16 , 15,10,19) - Zamijeni od 16> 11
(jedanaest, 16.15 , 10.19) -> (11, 15.16 , 10,19) - Zamijeni od 16> 15
(11.15, 16.10 , 19) -> (11,15, 10.16 , 19) - Zamijeni od 16> 10
(11,15,10,16,19) -> (11,15,10,16,19)
The je sortirano, ali naš algo ne zna je li dovršen. Stoga mu treba još jedna cijela propusnica bez ikakve zamjene da bi se znalo da je sortirano.
Treće dodavanje:
(jedanaest, 15.10 , 16,19) -> (11, 15.10 , 16,19)
(jedanaest, 15.10 , 16,19) -> (11, 10.15 , 16,19) - Zamijeni od 15> 10
(11,10,15,16,19) -> (11,10,15,16,19)
(11,10,15,16,19) -> (11,10,15,16,19)
Četvrti prolaz:
( 11.10 , 15,16,19) -> ( 10.11 , 15,16,19) - Zamijeni od 11> 10
Konačni izlaz je (10,11,15,16,19)
uloge i odgovornosti hadoop programera
Kodirajmo ovo sada -
Python program za implementaciju Bubble Sort
a = [16, 19, 11, 15, 10, 12, 14]
# ponavljanje petlje len (a) (broj elemenata) broj puta za j u rasponu (len (a)): # početno zamijenjeno je lažno zamijenjeno = False i = 0 dok je ia [i + 1]: #swapping a [i ], a [i + 1] = a [i + 1], a [i] # Promjena vrijednosti zamijenjenog zamijenjenog = Tačno i = i + 1 #ako je zamijenjen netačan, tada je popis sortiran # možemo zaustaviti petlju ako je zamijenjeno == Netačno: prijelom ispisa (a)
IZLAZ:
U gornjem kodu uspoređujemo susjedne brojeve i zamjenjujemo ih ako nisu u ispravnom redoslijedu. Ponovite isti postupak len (a) nekoliko puta. Dodijelili smo varijablu 'zamijenjeno' i postavili je 'Istina' ako se bilo koja dva elementa zamijene u iteraciji. A ako nema međusobne izmjene elemenata, tada je popis već sortiran i prema tome, nema promjene vrijednosti 'zamijenjenog' i možemo prekinuti petlju.
Ovime smo došli do kraja bloga pod nazivom 'Kako implementirati Bubble Sort u Pythonu'. Nadam se da je sadržaj dodao vrijednost vašem znanju Pythona.
Obavezno vježbajte što je više moguće i vratite svoje iskustvo.Imate pitanje za nas? Molimo vas da ga spominjete u odjeljku za komentare ovog bloga 'Kako implementirati Bubble Sort in Python' i javit ćemo vam se što je prije moguće.
Da biste stekli detaljno znanje o Pythonu, zajedno s raznim aplikacijama, možete se prijaviti uživo s 24/7 podrškom i doživotnim pristupom.