Mappa del sito
Indice degli aggiornamenti  27/10/18
Metti formule tra i preferiti
Contattaci
Segnalaci ad un amico

Formule e argomenti di matematica, fisica e scienze
Albert Einstein: ... la nostra conoscenza, se paragonata alla realta' e' primitiva e infantile. Eppure e' il bene piu' grande che possediamo.
... all our science, measured against reality, is primitive and childlike-and yet it is the most precious thing we have.


Versione stampabile della scheda visualizzata sotto

Seguici in Facebook    Seguici in Pinterest    Seguici in X

Informatica : Code snippets (ordinamenti)

Bubble Sort

Routine di ordinamento, iterativamente fa emergere l'emento maggiore (o minore) in alto, come una bolla (bubble).


Linguaggio: C#

 
Descrizione:
:
: Ripeto:
: scambio = false
: ciclo l'array con -pa- che va:
: da pos 1 (0) a quanti-1 (array.Length-2)
: se sortOrder = 1 (ascendente il piu' piccolo in cima)
: se elem[pa] maggiore elem[pa+1]
: scambio pa e pa+1
: scambio = true
: se sortOrder = 2 (discendente il piu' grande in cima)
: se elem[pa] minore elem[pa+1]
: scambio pa e pa+1
: scambio = true
: Fine ciclo
: Ripeto ancora se scambio = true
:
Parametri : myArray = int[] - array da ordinare
: sortOrder = int - 1=ordine ascendente, 2=discendente
Ritorna : int[] - l'array ordinato
:
Usare : int[] pippo = array da ordinare
:
: bubbleSort(ref pippo,1); per ordinamento ascendente
: -
: bubbleSort(ref pippo,2); per ordinamento discendente

 
public void bubbleSort(ref int[] myArray,int sortOrder)
{
int l = myArray.Length; // dimensione dell'array

bool scambio = true; // per entrare nel loop

int appSwap = 0; // appoggio per lo scambio

while (scambio)
{
scambio = false;
// se nel prossimo giro non
// scambio almeno due elementi,
// l'array e' a posto

for (int pa = 0; pa < l - 1; pa++)
{
if (sortOrder == 1) // ascendente, il minore in testa
{
if (myArray[pa] > myArray[pa + 1])
{
appSwap = myArray[pa];
myArray[pa] = myArray[pa + 1];
myArray[pa + 1] = appSwap;
scambio = true;
}
}
else // discendente i piu' grandi salgono...
{
if (myArray[pa] < myArray[pa + 1])
{
appSwap = myArray[pa];
myArray[pa] = myArray[pa + 1];
myArray[pa + 1] = appSwap;
scambio = true;
}
}
}
}
}



Made by Formule Development Team








  Metti la scheda negli appunti    Click per visualizzare il blocco appunti Visualizza appunti    Click x svuotare blocco appunti Azzera appunti



UTILITY
FormuLe-MATEMATICALC

TROVA FORMULE

UTILITY
FormuLe-FISICALC


TROVA FORMULE

UTILITY
FormuLe-STATISTICALC

UTILITY
Formule-MATFINCALC

ARGOMENTI
Matematica

Frattali di Mandelbrot
Benoit Mandelbrot e la Geometria Frattale. Introduzione e immagini.

Statistica e giochi

Lotto e superEnalotto
Una sintetica comparazione statistica e finanziaria dei due giochi.

Ultimo aggiornamento - Last update:  27/10/2018
Privacy and cookies
© www.gobnf.com 2008-2024 - Tutto il materiale contenuto nel sito PUO' essere liberamente usato per scopi personali (studio, creazione di relazioni e tesine etc). Non e' consentito qualsiasi altro tipo di utilizzo o riproduzione. - The entire content of this site may be freely used ONLY for personal purposes (study, creation of reports etc.). It is not allowed any other use or reproduction.