Tuesday 19 May 2015

C++ program for Bubble sort using template function

#include<iostream>
#include<stdlib.h>
using namespace std;

template <class T>
class buble
{
        T a[10];
        public:
                void read(int);
                void sort(int);
                void display(int);
};

template <class T>
void buble<T>::read(int n)
{
        for(int i=0;i<n;i++)
        cin>>a[i];
        cout<<"before sort\n";
        for(int i=0;i<n;i++)
        cout<<a[i]<<"\t";
        cout<<endl;
}

template <class T>
void buble<T>::sort(int n)
{
        T t;
        for(int i=0;i<n;i++)
        {
                for(int j=i+1;j<n;j++)
                {
                        if(a[i]>a[j])
                        {
                                t=a[i];
                                a[i]=a[j];
                                a[j]=t;
                        }
                }
        }
}

template <class T>
void buble<T>::display(int n)
{
        cout<<"after sort\n";
        for(int i=0;i<n;i++)
        cout<<a[i]<<"\t";
        cout<<endl;
}

int main()
{
        int n;
        buble<int>b1;
        buble<double>b2;
        system("clear");
        cout<<"enter n\n";
        cin>>n;
        cout<<"integer values:\n";
        b1.read(n);
        b1.sort(n);
        b1.display(n);
        cout<<"\n\ndouble values\n";
        b2.read(n);
        b2.sort(n);
        b2.display(n);
           return 1;
}

No comments:

Post a Comment