2 回答
TA贡献1752条经验 获得超4个赞
堆栈具有顶部项目和指向堆栈其余部分的指针。您可以使用列表或数组来实现
堆栈是一种线性数据结构,它遵循执行操作的特定顺序。在栈中主要进行以下三个基本操作:
推送:在堆栈中添加一个项目。如果堆栈已满,则称其为溢出条件。
Pop:从堆栈中移除一个项目。这些项目以它们被推送的相反顺序弹出。
Peek or Top:返回栈顶元素。
isEmpty:如果堆栈为空则返回真,否则返回假。
class Stack
{
static final int MAX_ELEMENT = 100;
int top;
int a[] = new int[MAX_ELEMENT]; // Maximum size of Stack
boolean isEmpty()
{
return (top < 0);
}
Stack()
{
top = -1;
}
boolean push(int x)
{
if (top >= (MAX_ELEMENT -1))
{
System.out.println("Stack Overflow");
return false;
}
else
{
a[++top] = x;
System.out.println(x + " pushed into stack");
return true;
}
}
int pop()
{
if (top < 0)
{
System.out.println("Stack Underflow");
return 0;
}
else
{
int x = a[top--];
return x;
}
}
}
TA贡献1834条经验 获得超8个赞
您应该创建自己的类,从 Vector 扩展它,并实现您需要的所有方法。或者只是使用所有方法创建自己的类。或者你可以从 Stack 类扩展你的类并覆盖你想要改变的行为的方法
添加回答
举报