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)