Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> Computer Programming Languages >> .

Vantaggi e svantaggi del Bubble Sort

programmatori che passano da PC e sviluppo web in di codifica per i dispositivi mobili o sistemi embedded trovano che più tempo viene speso per la selezione e la codifica le proprie strutture di dati e algoritmi . Con meno memoria e di archiviazione dei dati limitati , non c'è spazio per le librerie pre-costruiti o quadri . Quindi, per chi ha bisogno di scrivere le proprie routine di ordinamento , qui ci sono alcune considerazioni su come scegliere gli umili bubble sort . Sfondo Foto

Il bubble sort è un semplice algoritmo che ordina un elenco di elementi in memoria . Dato un array , il codice confronta ripetutamente ogni coppia di elementi e li swap se non sono in ordine adiacenti . Il processo si ripete fino a quando non si verificano più swap . Se fosse possibile visualizzare la matrice mentre l' ordinamento è in corso, i bassi valori sarebbero " bolla " in cima mentre i valori grandi avrebbero depositano sul fondo . Ecco il codice corrispondente in Visual Basic 2010 :

Mentre scambiare = True

swap = False

For i = 0 To tbl.length - 2

Se TBL ( i) > TBL ( i + 1) Poi

tmp = TBL (i ) per

TBL ( i) = TBL ( i + 1 ) per

TBL ( i + 1) = tmp

di swap = True

End If

Avanti

End While
Quando scegliere il Bubble Sort

Questo algoritmo ha diversi vantaggi . E 'semplice da scrivere , facile da capire e richiede solo poche righe di codice . I dati vengono ordinati in atto in modo c'è poco overhead di memoria e , una volta ordinati , i dati sono in memoria , pronto per l'elaborazione. Il principale svantaggio è la quantità di tempo necessario per ordinare . Il tempo medio aumenta quasi esponenzialmente con il numero di elementi tavola aumento . Dieci volte il numero di elementi prende quasi cento volte più a lungo di sorta .
Altri tipi di array
algoritmi di ordinamento

variano per complessità , velocità e sovraccarico . Il bubble sort è il meno complesso , ma anche uno dei più lenti . Altri tipi array- based come l' insertion sort e lo scambio di specie sono un po 'più veloce , ma prendono più di codice ( vedere i riferimenti sotto) . Il vantaggio principale di sorta basati matrice sono che usano il meno codice e prendono la minor quantità di memoria di lavoro . Considerare questi tipi di matrici semplici con meno di qualche centinaio di articoli .
Complessi Ordina Algoritmi

set di dati più grandi richiedono codice più complesso e più memoria . Il quick sort e heap sort sia diviso e copiare il set di dati per ottimizzare il numero di confronti . Il quick sort divide continuamente la lista poi si ricompone in modo ordinato . L' heap sort copia i dati in una struttura ad albero, poi attraversa l'albero per copiare i dati di nuovo in ordine . Entrambi sono veloce ed efficiente, ma prendono più codice e stoccaggio molto più lavoro . Scegliere questi algoritmi per grandi insiemi di dati .

 

Programmazione © www.354353.com