纯纯小白,有错请指出,谢谢。
1、基本概念
栈是允许在固定的一端进行插入和删除元素操作的一种特殊的线性表。进行删除的一端称为栈顶,另一端则称为栈底,栈中各元素遵循着“先进后出”的基本原则。
2、入栈
又称进栈、压栈,即将元素从栈顶放入栈中
3、出栈
即将元素从栈中删除,但删除时须遵循“先进后出”,元素只能在栈顶被取出。
4、计算栈的大小
#include <iostream>
using namespace std;
class SetStack
{
public:
SetStack()
{
data = new int[100];
top = -1;
}
void Print()
{
cout << "栈的长度为: " << top + 1 << endl;
if (top + 1)
{
cout << "栈的内容为: " << endl;
for (int i = 0; i < top + 1; i++)
{
cout << data[i] << " ";
}
cout << endl;
}
}
void Insert(int n)
{
top++;
data[top] = n;
}
int len()
{
return top + 1;
}
void Remove(int *m)
{
if (top > -1)
{
*m = data[top];
top--;
}
}
private:
int *data;
int top;
};
int main()
{
SetStack set;
set.Print();
for (int i = 0; i < 10; i++)
set.Insert(i);
set.Print();
int m;
for (int i = 0; i < 5; i++)
set.Remove(&m);
set.Print();
return 0;
}