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