Увод у Буббле Сорт ин Питхон
Сорта мехурића је једноставан и логичан алгоритам сортирања. Његов принцип рада заснован је на рекурзивној измјени сусједних елемената ако је налог погрешан. У овој теми ћемо сазнати о Буббле Сорт ин Питхон-у.
Сорта мјехурића која се понекад назива и сорта потонућа, сорта рипппле.
Погледајмо то на примеру:
Прво приказивање
( 6 1 4 3) -> ( 1 6 4 2): Овде се мењају прва два елемента ако поредак није тачан.
(1 6 4 2) -> (1 4 6 2): Овде се следећа два елемента мењају ако редослед није тачан.
(1 4 6 2 ) -> (1 4 2 6 ): Овде се следећа два елемента мењају ако редослед није тачан.
Друга вожња
( 1 4 2 6) -> ( 1 4 2 6): Овде се упоређују први елементи, али не мењају јер је редослед тачан.
(1 4 2 6) -> (1 2 4 6): Овде се мењају следећа два елемента јер ред није био тачан.
(1 2 4 6 ) -> (1 2 4 6 ): Овде се упоређују последња два елемента, али не мењају се по редоследу
Сада знамо да поље изгледа разврстано, међутим, потребна је једна вожња без икаквог пребацивања, да би алгоритам знао да ли је сортирање извршено.
Трећа вожња
( 1 2 4 6) -> ( 1 2 4 6): Нема замене у два два елемента.
(1 2 4 6) -> (1 2 4 6): Нема замене у следећа два елемента.
(1 2 4 6 ) -> (1 2 4 6 ): Нема замјене у задња два елемента.
Како се ниједна фаза није догодила, сада алгоритам схвата да је сортирање савршено.
Сорта мјехурића добила је име по томе што се елементи крећу према тачном редослиједу, попут мјехурића који се уздижу на површину.
Врста мехурића на језику Питхон-а
Сада да видимо логичну имплементацију сортирања балона кроз питхон. Питхон је ових дана веома широко кориштен језик. Разумевање кроз питхон сигурно ће вам дати самопоуздање да бисте могли да га напишете и на другим језицима.
Питхон Цоде
def bubble_Sort(arr):
m = len(arr)
# Traverse through all the array elements
for u in range(m):
for v in range(0, mu-1):
# traverse the array from 0 to mu-1
# Swap if the element is greater than adjacent next one
if arr(v) > arr(v+1) :
arr(v), arr(v+1) = arr(v+1), arr(v)
Да бисте штампали низ након сортирања облачића, потребан вам је следећи код:
for i in range(len(arr)):
print("%d" %arr(i)),
Here arr will be your array.
Објашњење Питхон кода
Овде је „м“ дужина низа. Две за петље држе стварну логику уземљења, при чему „у” представља први елемент, док „в” представља други с којим се први елемент мора упоређивати за замењивање ако редослед сортирања између обе није тачан.
„Арр (в)> арр (в + 1)“ ово представља поређење узастопних елемената, ако је први елемент већи од другог елемента, операција размене ће се извршити следећим изразом:
То је „арр (в), арр (в + 1) = арр (в + 1), арр (в)“.
Ова операција размене назива се свап. Добар део није привремено меморирање за ову врсту свап операција.
„У“ представља петљу сваке вожње, док „в“ представља фазе сваке фазе. Може се навести пример у горњем одељку.
Након извођења сортирања са мехурићима, можете видети сортирани низ, са шифром поменутом у наставку:
for i in range(len(arr)):
print ("%d" %arr(i)),
Да видимо како се то понаша у Питхон ИДЕ-у, ради дубљег разумевања:
Излаз:
Постоји неколико чињеница о Буббле Сорт-у, које би сви требали знати пре него што га примене:
- Сорта с мехурићима често се сматра недовољном ефикасном методом сортирања. Пошто мора да размењује предмете све док се не зна коначно место. Све ово доводи до расипања операција, а самим тим и веома скупо. Овај алгоритам пролази кроз сваки елемент, где је потребно сортирање или не. Једном када пролазак прође без икаквих замјена, сорта мјехурића сматра се довршеном.
- Ово је најједноставније међу свим структурама података, јер за почетнике ово пружа добро самопоуздање. Лако је конструисати и разумети.
- Користи пуно времена и меморије.
- Ово се сматра стабилним алгоритмом, јер чува релативни редослед елемената.
- Сматра се добрим за мали низ / листу. Међутим, лоша је идеја користити га за дуге.
Закључак
Пролазећи кроз горњи садржај сорте балона, могло се добити кристално јасно разумевање овог алгоритма за сортирање, специјализованог са питоном. Једном када се неко удовољи логици сортирања облачића, разумевање другог скупа података ће тада бити лакше. Логички приступ је једини начин за успех у области структуре података. Прво би требало разумети логику алгоритма структуре података у свакој фази, а затим циљање њеног кода путем Питхона или било којег другог језика.
Препоручени чланци
Ово је водич за Буббле Сорт ин Питхон. Овде смо расправљали о логичкој имплементацији сортирања балона кроз питхон код са објашњењем. Такође можете погледати следећи чланак да бисте сазнали више -
- Петље у Питхон-у
- Операције датотека Питхон-ом
- Палиндроме у Питхон-у
- 3д низови у Питхон-у
- Особине Питхон-а
- Замјена у ПХП-у
- 3Д низови у Ц ++
- Палиндроме у Ц ++
- Палиндроме у ЈаваСцрипту
- Како низови и пописи раде у Питхону?