Verskil tussen borrelsortering en seleksiesortering

Verskil tussen borrelsortering en seleksiesortering
Verskil tussen borrelsortering en seleksiesortering

Video: Verskil tussen borrelsortering en seleksiesortering

Video: Verskil tussen borrelsortering en seleksiesortering
Video: ODBC vs JDBC 2024, Julie
Anonim

Bubble Sorteer vs Seleksie Sorteer

Bubble sorteer is 'n sorteeralgoritme wat werk deur die lys deur te gaan om herhaaldelik gesorteer te word terwyl pare elemente wat aangrensend is vergelyk. As 'n paar elemente in die verkeerde volgorde is, word hulle omgeruil om hulle in die regte volgorde te plaas. Hierdie deurkruising word herhaal totdat geen verdere omruilings nodig is nie. Seleksie-sorteer is ook 'n sorteeralgoritme, wat begin deur die minimum element in die lys te vind en dit met die eerste element om te ruil. Hierdie proses word vir die res van die lys herhaal deur omgeruilde elemente in volgorde te plaas.

Wat is Bubble Sort?

Bubble sorteer is 'n sorteeralgoritme wat werk deur die lys deur te gaan om herhaaldelik gesorteer te word terwyl pare elemente wat aangrensend is vergelyk. As 'n paar elemente in die verkeerde volgorde is, word hulle omgeruil om hulle in die regte volgorde te plaas. Hierdie deurkruising word herhaal totdat geen verdere omruilings nodig is nie (wat beteken dat die lys gesorteer is). Aangesien die kleiner elemente in die lys na bo kom soos 'n borrel na die oppervlak kom, kry dit die naam borrelsoort. Bubble sorteer is 'n baie eenvoudige sorteer algoritme maar dit het 'n gemiddelde saak tyd kompleksiteit van O(n2) wanneer 'n lys met n elemente gesorteer word. As gevolg hiervan is borrelsortering nie geskik om lyste met 'n groot aantal elemente te sorteer nie. Maar as gevolg van die eenvoud daarvan, word borrelsortering geleer tydens inleidings tot algoritmes.

Wat is seleksie-sortering?

Seleksie-sortering is ook 'n ander sorteeralgoritme wat begin deur die minimum element in die lys te vind en dit met die eerste element te ruil. Dan word die minimum element van die res van die lys gevind (vanaf die tweede element tot die laaste element in die lys) en met die tweede element omgeruil. Hierdie proses word vir die res van die lys herhaal deur omgeruilde elemente in volgorde te plaas. So in seleksie-sorteer, by enige stap van die algoritme, word die lys in twee dele verdeel waar een deel gesorteerde elemente bevat en die ander deel ongesorteerde elemente bevat. Soos die algoritme voortgaan, groei die gesorteerde lys van links na regs. Seleksie sorteer het ook 'n gemiddelde saak tyd kompleksiteit van O(n2). Daarom is dit ook nie geskik om groot lyste te sorteer nie.

Wat is die verskil tussen borrelsortering en seleksiesortering?

Selfs al het beide die borrel-sorteer- en seleksie-sorteer-algoritmes gemiddelde geval-tyd-kompleksiteite van O(n2), word borrelsortering byna altyd beter as die seleksie-sorteer gevaar. Dit is as gevolg van die aantal omruilings wat deur die twee algoritmes benodig word (borrelsoorte benodig meer omruilings). Maar as gevolg van die eenvoud van borrelsoort, is die kodegrootte daarvan baie klein. Stabiliteit is nog 'n verskil in hierdie twee algoritmes. 'n Stabiele sorteeralgoritme is 'n sorteeralgoritme wat die volgorde van rekords behou indien die lys elemente met 'n gelyke waarde bevat. In daardie sin is seleksiesortering nie 'n stabiele algoritme nie, terwyl borrelsortering 'n stabiele algoritme is.

Aanbeveel: