Bubble Sort vs beszúrási rendezés
A Bubble sort egy válogatási algoritmus, amely úgy működik, hogy a szortírozandó elemek párjának összehasonlításakor ismételten átmegy a válogatandó listán. Ha egy pár elem nem megfelelő sorrendben van, akkor felcserélik őket, hogy a megfelelő sorrendbe helyezzék őket. Ezt a keresztezést addig ismételjük, amíg további cserékre nincs szükség. Az beszúrási rendezés egy rendezési algoritmus is, amely úgy működik, hogy egy elemet a bemeneti listába illeszt be a már rendezett lista megfelelő helyére. Ezt a folyamatot ismételten alkalmazzák, amíg a lista rendezésre nem kerül.
Mi a Bubble Sort??
A Bubble sort egy válogatási algoritmus, amely úgy működik, hogy a szortírozandó elemek párjának összehasonlításakor ismételten átmegy a válogatandó listán. Ha egy pár elem nem megfelelő sorrendben van, akkor felcserélik őket, hogy a megfelelő sorrendbe helyezzék őket. Ezt az átjárást addig ismételjük, amíg további cserékre nincs szükség (ami azt jelenti, hogy a lista rendezett). Mivel a lista kisebb elemei a tetejére kerülnek, amikor egy buborék megjelenik a felszínen, akkor a buborékfajta elnevezést kapják. A Bubble sort egy nagyon egyszerű válogatási algoritmus, de átlagos eseti ideje bonyolult O (n2), ha n elemet tartalmazó listát rendezünk. Emiatt a buborékrendezés nem alkalmas nagyszámú elemű listák rendezésére. Az egyszerűség miatt azonban a buborék rendezését az algoritmusok bevezetése során tanítják.
Mi az a beszúrási rendezés??
A beszúrási rendezés egy másik rendezési algoritmus, amely úgy működik, hogy egy elemet bevitt az input listába a megfelelő helyre egy listában (amely már rendezett). Ezt a folyamatot ismételten alkalmazzák, amíg a lista rendezésre nem kerül. Beszúrásos rendezésnél a válogatást a helyszínen hajtják végre. Ezért az algoritmus i. Iterációja után a lista első i + 1 bejegyzését rendezik, és a lista többi részét szétválogatják. Minden iterációnál a lista szétválogatott részének első elemét veszi és a megfelelő helyre helyezi a lista rendezett részében. Az inszerciós rendezés átlagos esetbeli bonyolultsága O (n2). Emiatt a beszúrási rendezés szintén nem alkalmas nagy listák rendezésére.
Mi a különbség a Bubble Sort és a Insertion Sort között?
Annak ellenére, hogy mind a buborék rendezés, mind az beszúrás rendezési algoritmusok átlagos esetbeli bonyolultsága O (n2), a buborék rendezést szinte mindig felülmúlja a beszúrási sorrend. Ennek oka a két algoritmushoz szükséges csereügyletek száma (a buborékfajtáknak további csereprogramokra van szükségük). De a buborék rendezésének egyszerűsége miatt a kód mérete nagyon kicsi. Ezenkívül létezik egy beillesztési változat, úgynevezett héjfajta, amelynek O időbeli bonyolultsága (n3 / 2) lehetővé tenné annak gyakorlati alkalmazását. Ezenkívül a beszúrási rendezés nagyon hatékony a „szinte rendezett” listák rendezéséhez, a buborék rendezéséhez képest.