Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // * * Bismillahir Rahmanir Rahim * *
- // ************************@Author*******************************
- /* Asik Ifthaker Hamim */
- #include <bits/stdc++.h>
- #include<stdlib.h>
- using namespace std;
- typedef long long ll;
- typedef unsigned long long int ulli;
- typedef long long int lli;
- typedef unsigned long long ull;
- typedef vector<int> vi;
- typedef vector<ll> vl;
- typedef vector<string> vs;
- typedef pair<ll,ll> pr;
- #define pb push_back
- #define sz(n) n.size()
- #define vs(n) (int)n.size()
- #define pp pop_back
- #define sp(n) setprecision(n)
- const int MOD = 1000000007;
- #define ffor(a, b) for (int i = a; i <b; i++)
- #define frev(b, a) for (int i = b; i >= a; i--)
- #define PI (acos(-1.0))
- #define torad(x) ((x)*((2*acos(0))/180.0))
- #define todeg(x) ((x)*(180.0/(2*acos(0))))
- #define fixAngle(x) ((x)>1?1:(x)<-1?-1:(x))
- #define tan(a) tan(a)/(pi/180)
- #define sin(a) sin(a)/(pi/180)
- #define cos(a) cos(a)/(pi/180)
- #define inverse_sin(a) asin(a)/(pi/180)
- #define inverse_cos(a) acos(a)/(pi/180)
- #define inverse_tan(a) atan(a)/(pi/180)
- const int dr4[] = {0, 1, 0, -1};
- const int dc4[] = {1, 0, -1, 0};
- const int dr8[] = {0, 1, 1, 1, 0, -1, -1, -1};
- const int dc8[] = {1, 1, 0, -1, -1, -1, 0, 1};
- using namespace std;
- double neg_infinity(-std::numeric_limits<double>::infinity());
- template<typename T>
- class Queue{
- T* obj;
- int f;
- int r;
- int mSize;
- int size;
- public:
- Queue(int size){
- mSize = size;
- obj = new T[mSize];
- f = -1;
- r = 0;
- this->size = 0;
- }
- int getSize(){
- return size;
- }
- bool isEmpty(){
- return size == 0;
- }
- T front(){
- if(f == -1){
- cout<<"Queue is empty "<<endl;
- return 0;
- }
- return obj[f];
- }
- void push(T elem){
- if(size == mSize){
- cout<<"Queue is full "<<endl;
- return;
- }
- if(f == -1){
- f = 0;
- }
- obj[r] = elem;
- r++;
- size++;
- }
- T pop(){
- if(f== -1){
- cout<<"Queue is empty "<<endl;
- return 0;
- }
- T temp = obj[f];
- for (int i = 0; i <size; i++) {
- obj[i] = obj[i + 1];
- }
- r--;
- size--;
- if(size == 0){
- f = -1;
- r = 0;
- }
- return temp;
- }
- };
- int main()
- {
- ios_base::sync_with_stdio(false);
- Queue<int>q1(5);
- q1.push(5);
- q1.push(6);
- cout<<q1.front()<<endl;
- q1.pop();
- cout<<q1.front()<<endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement