Loading

栈的java实现

一.什么是栈?

栈是一个有序的线性表,只能在栈顶进行操作插入和删除操作。所以也叫先进后出表。

二.栈的应用场景

1.符号匹配
2.中缀表达式转换为后缀表达式
3.计算后缀表达式
4.实现函数调用
5.求范围误差
6.网页浏览器中已访问页面的历史纪录
7.文本编辑器中的撤销序列
8.作为算法辅助数据结构

三.栈的具体实现:

1.基于简单数组的实现
顾名思义,就是用数组实现栈的应用:

class ArrayStack{
   
   //节点变量定义
    private int top;
    private int capacity;
    private int[] array;
    //无参构造方法
    public ArrayStack()
    {
   
        capacity=1;
        array=new int[capacity];
        top=-1;
    }
    //有参构造方法
    public ArrayStack(int a)
    {
   
        capacity=a;
        array=new int[a];
        top=-1;
    }
    //判断是否为空
    public boolean isEmpty()
    {
   
        return (top==-1);
    }
    //判断是否满了
    public boolean isStackFull()
    {
   
        return (top==capacity-1
posted @ 2020-03-21 15:03  文牧之  阅读(13)  评论(0)    收藏  举报  来源