A Generic bubble sort

// A Generic Bubble Sort.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "iostream"
using namespace std;
template <class X>
   void bubble(X *data, int size)
   {
     register int a, b;
     X t;
     for(a=1; a < size; a++)
      for(b=size-1; b >= a; b--)
     if(data[b-1] > data[b])
     {
       t = data[b-1];
       data[b-1] = data[b];
       data[b] = t;
     }
   }
   int main()
   {
     int i[] = {3, 2, 5, 6, 1, 8, 9, 3, 6, 9};
     double d[] = {1.2, 5.5, 2.2, 3.3};
     int j;
     bubble(i, 10); // sort ints
     bubble(d, 4); // sort doubles
     for(j=0; j<10; j++)
     cout << i[j] << ' ';
     cout << endl;
     for(j=0; j<4; j++)
     cout << d[j] << ' ';
     cout << endl;
        system("pause");
     return 0;
   }


Share on Google Plus