Saturday, February 7, 2015

Implementation of Bubble sort using Queue in C++

#include<iostream>
#include<cstdlib>
using namespace std;
class queue
{ public:
    int size,i,j,n;
    int elmnt[50];
    int front;
    int rear;
    void enqueue(int j);
    void dequeue();
    void sort();
    queue()
    {size=50;
     front=-1;
     rear=-1;
    }
};
void queue::enqueue(int e)
{ rear=(rear+1)%size;
     elmnt[rear]=e;
     if(front==-1)
     front++;
}
void queue::dequeue()
{
     cout<<elmnt[front]<<endl;
front=(front+1)%size;
   
}
void queue::sort()
{for(i=0;i<n-1;i++)
 {for(j=0;j<n-1-i;j++)
  {if(elmnt[j]>elmnt[j+1])
    {elmnt[j]=elmnt[j]+elmnt[j+1];
     elmnt[j+1]=elmnt[j]-elmnt[j+1];
     elmnt[j]=elmnt[j]-elmnt[j+1];
    }
  }
 }
}
int main()
{queue s;
 cout<<"Enter the no of terms you want to enter:";
 cin>>s.n;
 cout<<"Enter the no's:\n";
 for(s.i=0;s.i<s.n;s.i++)
 {cin>>s.j;
  s.enqueue(s.j);
 }
 cout<<"Thus the no's after sorting are:\n";
 s.sort();
 for(s.i=0;s.i<s.n;s.i++)
  s.dequeue();
}

No comments:

Post a Comment

Contributors

Translate