数据基础结构——栈(Java)

定义

栈一个动态集合,仅允许在线性表一端进行数据的存取操作。

栈的基础操作

1、基础数值定义

数值名称数值类型数值用途
aint[]栈的主体
sizeint栈的大小
topint栈顶坐标

2、基础函数操作
(1)栈的构建

public Stack(int maxsize) {  //构建初始栈大小
    this.size = maxsize;
    this.a = new int[size];
    this.top = -1;
}

(2)栈顶元素查询

public int peek() {  //查询栈顶的值
    if(this.isEmpty()){
        System.out.println("Stack is empty");
        return 0;
    }
    return a[top];
}

(3)入栈

public void push(char value){  //入栈
    if(this.isFull()){
        System.out.println("stack is full");
        return ;
    }
    a[++top] = value;
}

(4)出栈

public int pop(){  //出栈
    if(this.isEmpty()){
        System.out.println("Stack is empty");
        return 0;
    }
    return a[top--];
}

(5)栈的大小

public int size(){  //栈的大小
    return top+1;
}

(6)栈空判断

public boolean isEmpty(){  //判断栈是否为空
    return (top == -1);
}

(7)栈满判断

public boolean isFull(){  //判断栈是否满
    return (top == size -1);
}

(8)栈的打印

public void display(){  //打印栈
    for(int i = top; i >= 0; i--){
        System.out.println(a[i]+" ");
    }
    System.out.println(" ");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值