Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #define size 10
- class Stack
- {
- private:
- int top1;
- int top2;
- public:
- int stack1[size];
- int stack2[size];
- Stack() { top1 = -1, top2 = -1; }
- bool isFull()
- {
- return (top1 >= (size - 1)) ? true : false;
- }
- bool isEmpty()
- {
- return (top1 < 0) ? true : false;
- }
- void push(int val)
- {
- if (!isFull())
- {
- stack1[++top1] = val;
- std::cout << "Data " << val << " successfuly pushed\n";
- }
- else
- std::cout << "Stack overflow!!\n";
- }
- int pop()
- {
- if (top1 < 0)
- {
- std::cout << "Stack underflow!!\n";
- return 0;
- }
- else
- {
- int data = stack1[top1--];
- return data;
- }
- }
- int peek()
- {
- if (top1 < 0)
- {
- std::cout << "Stack is empty!!";
- return 0;
- }
- else
- {
- int data = stack1[top1];
- return data;
- }
- }
- void printStack()
- {
- int listLength = sizeof(stack1) / sizeof(stack1[0]);
- std::cout << "Content: ";
- for (int i = 0; i < listLength; i++)
- std::cout << stack1[i] << ", ";
- }
- };
- void sortStack()
- {
- Stack stack;
- int i = 0;
- int stackSize = sizeof(stack.stack1) / sizeof(stack.stack1[0]);
- while (i < stackSize)
- {
- //if()
- }
- }
- int main()
- {
- int dataSet[] = { 12, 76, 45, 34, 6, 13, 21, 5, 10, 89 };
- int dataSetLength = sizeof(dataSet) / sizeof(dataSet[0]);
- Stack stack;
- for (int i = 0; i < dataSetLength; i++)
- {
- stack.push(dataSet[i]);
- }
- int peekTop = stack.peek();
- std::cout << "Top: " << peekTop << "\n";
- stack.printStack();
- return 0;
- }
Add Comment
Please, Sign In to add comment