Implementazioni di algoritmi/Bubble sort: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
|||
Riga 1:
{{Implementazioni di algoritmi}}
Il '''bubble
Il nome dell'algoritmo è dovuto al fatto che, durante l'applicazione del procedimento, i valori vengono spostati all'interno dell'array con una dinamica che ricorda il movimento delle bollicine in un bicchiere di champagne. In particolare, alcuni elementi attraversano l'array velocemente (come bollicine che emergono dal fondo del bicchiere), altri più lentamente (a differenza di quanto avviene nel caso del bicchiere di champagne, tuttavia, alcuni elementi ''salgono'' ma altri ''scendono'').
=== Analisi dell'algoritmo ===
Il bubble
Il tempo di esecuzione dell'algoritmo è [[O-grande|Θ]](n<sup>2</sup>).
Riga 37:
=== [[w:linguaggio C++|C++]] ===
<source lang="C++">
void
{
/* elemN è il numero degli elementi del vettore da ordinare */
Riga 79:
}
</source>
Implementazione dell'algoritmo che presenta le ottimizzazioni enunciate alla voce [[w:Bubble
<source lang="Java">
void bubbleFart (int[] a){
Riga 197:
===[[w:Visual Basic .NET|Visual Basic .NET]]===
<source lang="vb">
Sub
For I = LBound(MioArray, 1) To UBound(MioArray, 1) -1
Riga 229:
===[[w:Perl|Perl]]===
<source lang="perl">
sub
my @a = @_;
foreach $i (reverse 0..$#a) {
Riga 242:
===[[w:Python|Python]]===
<source lang="python">
def
seq = list(iterable)
for passesLeft in xrange(len(seq)-1, 0, -1):
Riga 273:
===[[w:Lisp|Lisp]]===
<source lang="lisp">
(DEFUN bubble-
(LET ((Bubble (bubble X)))
(IF (EQUAL X Bubble) X (bubble-
(DEFUN bubble (X)
Riga 290:
===[[w:AppleScript|AppleScript]]===
<source lang="Applescript">
on
repeat with i from 1 to length of array
repeat with j from 1 to length of array - 1
Riga 300:
end repeat
end repeat
end
Nota: AppleScript è 1-based, cioè il primo elemento di una lista è 1
=== [[w:PHP|PHP]] ===
<source lang="PHP">
function
{
$alto= count ($array);
Line 326 ⟶ 325:
=== [[w:MATLAB|MATLAB]] ===
<source lang="MATLAB">
function vettore =
for k=numel(a)-1:-1:1
for i=1:k
Line 340 ⟶ 339:
== Altri progetti ==
{{interprogetto|w=Bubble
{{Avanzamento|100%|31 gennaio 2015}}
Line 346 ⟶ 345:
[[Categoria:Implementazioni di algoritmi| ]]
[[en:Algorithm Implementation/Sorting/Bubble
|