Wednesday, 9 December 2015

Que Implementation


#include <iostream>
using namespace std;

class que
{
private: int q[5], F, R;
public:
    que()
    {
        R = F = -1;
    }

    void qinsert(int val)
    {
        if (R > 4)
            cout << "que full";
        else
        {
            R++;
            q[R] = val;
        }
            if (F == -1)
                F = 0;
       
    }
    int qdel()
    {
        int temp;
        if (F == -1)
            cout << "que empty";
        else
        {
            temp = q[F];
            if (F == R)
                F = R = -1;
            F++;
            return temp;
        }
   
    }
    void print()
    {

        for (int i = F; i <= R; i++)
            cout << q[i] << "-";

    }
};

int main()
{
    int n;
    que obj;
    for (int i = 0; i <= 4; i++)
    {
        cout << "Enter value to Que: ";
        cin >> n;
        obj.qinsert(n);

    }
    cout << "The Que is: ";
    obj.print();
    {
        for (int k = 0; k < 2; k++)

        {
            cout <<endl<< "After Removing Number " << obj.qdel()<<endl;
            cout << "The Que is: ";
            obj.print();
        }
    }
    cout << endl;
}

Thursday, 3 December 2015

Infix to Postfix Conversion

#include <iostream>
using namespace std;


class expression
{
private:
    char st[100], stack[10];
    char ch;
    int top;
public:
    expression()
    {
        top = -1;
    }
    void input()
    {
        cout << "Please Enter Expression having operator + *  / - ( )" << endl;
        cin >> st;
    }
    void scan(void);
    void push(void);
    void pop(void);

};
int main()
{
    expression obj;
    obj.input();
    obj.scan();
    cout << endl;
}
void expression::scan(void)
{
    for (int i = 0; st[i] != '\0';i++)
    {
        ch = st[i];
        if (ch == '(' || ch == ')' || (ch == '*') || (ch == '+') || (ch == '-') || (ch == '/'))
        {
            if (ch == '(')
                push();

            else if (top == -1)
                push();
            else if (stack[top] == '(')
                push();
            else if (((ch == '*') || (ch == '/')) && ((stack[top] == '+') || (stack[top] == '-')))
                push();
            else if (ch == ')')
                pop();
            else
            {
                pop();
                push();
            }

        }
        else
        {
            cout << ch;
        }
    }

    pop();
}
void expression::push(void)
{
    top++;
    stack[top] = ch;
}
void expression::pop(void)
{
    while (top != -1)
    {
        if (ch == ')')
        {
            cout << stack[top];
            top--;


            if (stack[top] == '(')
            {

                top--;
                break;
            }

        }


        else
        {
            cout << stack[top];
            top--;
            if (stack[top] = '(')
            {

                break;
            }
        }
    }
}

Saturday, 28 November 2015

Storing Data using Stack

#include <iostream>
using namespace std;

class Stack
{
private: int arr[5],top;

public:

    Stack()
    {
        top = -1;
    }


    void push(int val)
    {
        if (top > 4)
            cout << "Stack Overflow";
        else
            top++;
        arr[top] = val;
    }

    int pop()
    {
        int temp;
        if (top < 0)
            cout << "Stack Underflow";
        else
            temp = arr[top];
            top--;
        return temp;
    }

    void print()
    {
        for (int i = 0; i <5; i++)
            cout << arr[i];
    }
};

int main()
{
    int val,a;
    Stack obj;
   
    for(int i = 0; i < 5; i++)
    {
        cout << "Enter Number for Pushing: ";
            cin >> val;
        obj.push(val);

    }

    obj.print();
    cout << endl;
    cout<<"Popped Value is: "<<obj.pop();
    cout << endl;

}

Thursday, 19 November 2015

Insertion Sorting in an Array using Class

#include <iostream>
using namespace std;

class insertion_sort
{
private: int arr[8];
public:
    void isort()
    {
        int temp,j;
        for (int i = 1; i < 8; i++)
        {
            temp = arr[i];
            j = i;
            while ((j>0) && (arr[j - 1] > temp))
            {
                arr[j] = arr[j - 1];
                j = j - 1;

            }
            arr[j] = temp;
        }
    }

    void input()
    {
        for (int i = 0; i < 8; i++)
        {
            cout << "Enter Number for location: " << i<<" = ";
            cin >> arr[i];
        }

    }

    void print()
    {
        for (int i = 0; i < 8; i++)

            cout <<" " << arr[i];
    }

};


int main()
{
    insertion_sort obj;
    cout << "Please Enter Un-Sorted Array " << endl;
    obj.input();
    cout << "Your entered Array is: " << endl;
    obj.print();
    obj.isort();
    cout <<endl<< "Now the sorted Array is: " << endl;
    obj.print();
    cout << endl;

}

Selection Sorting in an Array using Class

#include <iostream>
using namespace std;

class selection_sort
{
private: int arr[8];

public:
             void ssort()
         {
                 int min, temp;
                 for (int i = 0; i < 7; i++)
                 {
                     min = i;
                     for (int j = i + 1; j < 8; j++)
                     {
                         if (arr[j] < arr[min])
                             min = j;

                     }
                     temp = arr[i];
                     arr[i] = arr[min];
                     arr[min] = temp;
                 }
             }

             void input()
             {
                 cout << "Please Enter Unsorted Array" << endl;
                 for (int i = 0; i < 8; i++)
                 {
                     cout << "Enter number for location:" << i <<" = ";
                     cin >> arr[i];
                 }
             }

             void print()
             {
                 for (int i = 0; i < 8; i++)
                     cout <<" "<<arr[i];
             }
};

int main()
{
    selection_sort obj;
    obj.input();
    cout <<endl<< "Your entered Array is"<<endl;
    obj.print();
    obj.ssort();
    cout <<endl<< "Now the Sorted array is: " << endl;
    obj.print();
    cout << endl;
}

Saturday, 14 November 2015

Bubble Sorting in an Array using Class

#include <iostream>
using namespace std;

class bubblesort
{
private: int arr[8];
public:
    void input()
    {
        for (int i = 0; i < 8; i++)
        {
            cout << "Enter Number for Location: " << i<< " = ";
            cin >> arr[i];
        }
    }

    void print()
    {
        for (int i = 0; i < 8; i++)
            cout << arr[i];

    }

    void bsort()

    {
        int temp = 0;

        for (int i = 0; i < 7; i++)
        {
            for (int j = 0; j < 8 - i - 1; j++)
            {
                if (arr[j]>arr[j + 1])

                {
                    temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }

            }
        }
    }

};


int main()
{
    bubblesort obj;
    obj.input();
    obj.bsort();
    obj.print();

}

Sequential or Linear Searching in an Array using Class

#include <iostream>
using namespace std;

class sequential_search
{
private: int arr[8];
        
public:
    void input();
    void lsearch(int);

};


void sequential_search::input()
{
    for (int i = 0; i <8; i++)
    {
        cout << "Enter Number for location " << i << "=";
        cin >> arr[i];
    }

}


void sequential_search::lsearch(int val)
{
    int j = 0;
    int i = 0;

    while (j <= 8)
    {
        if (arr[i] == val)
        {
            break;
        }

        else
        {
            j++;
            i++;
        }

    }

    if (val == arr[i])
    {
        cout << "Value Found at location: " << i;
    }
    else
        cout << "Value not Found";

}

int main()
{
    int val;
    sequential_search obj;
    obj.input();
    cout << "Enter Number to Find : ";
    cin >> val;
    obj.lsearch(val);

}

Tree Insertion

#include <iostream> using namespace std; struct node {     int data;     node*left;     node* right; }; class tree { priva...