BUBBELSORTERING
EXEMPEL 3.1 I Boken
void
bubbelSort(double data[], int antal)
{
for(int m = antal-1; m > 0;
m--)
{
for(int n = 0; n <
m; n++)
{
if(data[n] > data[n+1])
{
double temp = data[n];
data[n] = data[n+1];
data[n+1] =
temp;
}
}
}
}
//Ursprungliga värden för heltalslistan data är (67, 54, 76, 63, 34)
//**************************************************
antal=5
varv 1:
m=4
n=0
om data[0] (67) är större än
data[0+1] (54) byt plats
data värden (54, 67, 76, 63, 34)
n=1
om data[1] (67) är större än data[2]
(76) byt plats
n=2
om data[2] (76) är större än data[3]
(63) byt plats
data värden (54, 67, 63, 76, 34)
n=3
om data[3] (76) är större än data[4]
(63) byt plats
data värden (54, 67, 63, 34, 76)
-=Största
värdet är nu placerat sist=-
*************************************************
varv 2:
m=3
n=0 utför loopen så länge n<m
om data[0] (54) är större än data[1]
(67) byt plats
om data[1] (67) är större än data[2]
(63) byt plats
data värden (54, 63, 67, 34, 76)
om data[2] (67) är större än data[3]
(34) byt plats
data värden (54, 63, 34, 67, 76)
****************************************************
varv 3:
m=2
n=0 utför loopen så länge n<m
om data[0] (54) är större än data[1]
(63) byt plats
om data[1] (63) är större än data[2]
(34) byt plats
data värden (54, 34, 63 , 67, 76)
*****************************************************
varv 4:
m=1
om data[0] (54) är större än data[1]
(34) byt plats
data värden (34, 54, 63 , 67, 76)