weixin_54623378 2021-05-26 14:49 采纳率: 0%
浏览 28

数据结构顺序栈的创建

实现顺序栈的初始化,多个元素入栈,读栈顶元素,全部出栈,单个元素入栈,单个元素出栈,栈空判断

  • 写回答

1条回答 默认 最新

  • 铭睿科技老郭 2021-05-26 14:56
    关注

    给你一段java代码用作参考:

    public class MyStack {
        private Object[] datas ;//Object类型的数组,用来存储堆栈的实际数据
        private int topIndex = -1;//用来记录堆栈栈顶的位置
        private int size;//堆栈的容量
    
        //默认无参构造,容量为100
        public MyStack(){
            this.datas = new Object[100];
            this.size = 100;
        }
        //用户指定堆栈的容量,构造堆栈
        public MyStack(int size){
            this.datas = new Object[size];
            this.size = size;
        }
    
        //判断堆栈是否为空
        public boolean isEmpty(){
            if(topIndex == -1){
                return true;
            }
            return false;
        }
        //入栈操作
        public void push(Object obj){
            if(topIndex == size-1){
                System.out.println("当前堆栈已满,无法再加入新元素:" + obj);
                return;
            }
            //栈顶位置加一
            topIndex++;
            //将要入栈的元素,放入数组中新的栈顶位置
            datas[topIndex] = obj;
        }
        //出栈操作
        public Object pop(){
            if(isEmpty()){
                return null;
            }
            //取得栈顶当前的元素
            Object obj = datas[topIndex];
            //将栈顶位置减一
            topIndex--;
            //返回取出来的栈顶元素
            return obj;
        }
    
        //获取栈顶元素使用
        public Object peek(){
            return null;
        }
    
    }
    评论

报告相同问题?

悬赏问题

  • ¥18 关于#贝叶斯概率#的问题:这篇文章中利用em算法求出了对数似然值作为概率表参数,然后进行概率表计算,这个概率表是怎样计算的呀
  • ¥20 C#上传XML格式数据
  • ¥15 elementui上传结合oss接口断点续传,现在只差停止上传和继续上传,各大精英看下
  • ¥100 单片机hardfaulr
  • ¥20 手机截图相片分辨率降低一半
  • ¥50 求一段sql语句,遇到小难题了,可以50米解决
  • ¥15 速求,对多种商品的购买力优化问题(用遗传算法、枚举法、粒子群算法、模拟退火算法等方法求解)
  • ¥100 速求!商品购买力最优化问题(用遗传算法求解,给出python代码)
  • ¥15 虚拟机检测,可以是封装好的DLL,可付费
  • ¥15 kafka无法正常启动(只启动了一瞬间会然后挂了)