数据结构和算法(三):简单栈实现

来源:互联网 发布:c语言编程dll程序 编辑:程序博客网 时间:2024/05/17 02:57
 #include <iostream> #include <stdio.h> #include <string.h> using namespace std;  class stack { public: stack() {   top = -1;   size = 10;   memset (arr, 0, sizeof (arr)); }  int push (int newData) {   if (top >= size-1)   {      cout<<"stack is full!\n";       return -1;   }    top++;   arr[top] = newData;    return 0; }  int pop(void) {   if(top < 0)   {     cout<<"stack is empty!\n";      return -1;   }    return arr[top--]; }  void show() {   int i = 0;   if (top < 0)   {     cout<<"stack is empty!\n";     return;   }   for (; i<= top; i++)   {     cout<<arr[i]<<" ";   }    cout<<endl; }  ~stack() { } private: int arr[10]; int size; int top; };  int main() {   stack stack;    int i = 0;   int newdata = 0;    stack.show();   while (i < 11)   {     cout<<"Input new data:\n";     cin>>newdata;     stack.push(newdata);     i++;     stack.show();   }    for(i=0; i< 10; i++)   {     cout<<stack.pop()<<endl;     stack.show();   }    stack.show();    return 0; }

0 0
原创粉丝点击