开发者社区> 问答> 正文

判断栈是否为空

判断栈是否为空

展开
收起
苍霞学子 2020-04-01 21:04:43 1771 0
2 条回答
写回答
取消 提交回答
  • 有点尴尬唉 你要寻找的东西已经被吃掉啦!

    int SeqStackIsEmpty(SeqStack *s) //判断栈是否为空 { return(s->top==0); }

    2020-04-01 22:25:10
    赞同 展开评论 打赏
  • 下一站是幸福
    * @date 2020/4/1 - 18:01
     */
    public class Four {
        //栈使用数组来表示
        int[] elements;
    
        public Four(){
            elements=new int[0];//先弄个对象
        }
    
        //压入元素
        public void push(int element){
            //创建一个新数组
            int[] newArr = new int[elements.length+1];
            //把原数组中的元素复制到新数组中
            for(int i=0;i<elements.length;i++)
            {
                newArr[i]=elements[i];
            }
            //把添加的元素放入新数组中
            newArr[elements.length]=element;
            //使用新数组替换旧数组
            elements=newArr;
        }
    
        //取出栈顶元素
        public int pop(){
            //取出数组最后一个元素
            int element = elements[elements.length-1];
            //创建新的数组
            int[] newArr = new int[elements.length-1];
            //取出原数组除最后一个的所有元素
            for(int i=0;i<elements.length-1;i++)
            {
               newArr[i] = elements[i];
            }
            //替换数组
            elements = newArr;
            //返回栈顶元素
            return element;
        }
        //判断栈是否为空
        public boolean isEmpty()
        {
            return elements.length==0;
        }
    }
    
    2020-04-01 21:29:30
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
如何使用Tair增强数据结构构建丰富在线实时场景 立即下载
Apache Flink 流式应用中状态的数据结构定义升级 立即下载
低代码开发师(初级)实战教程 立即下载