开发者社区 问答 正文

判断队列是否为空

判断队列是否为空

展开
收起
苍霞学子 2020-04-01 22:30:18 1456 分享 版权
1 条回答
写回答
取消 提交回答
  • 下一站是幸福
    package AliyunTest;
    
    /**
     * @author Lin
     * @date 2020/4/1 
     */
    public class MyQueue {
        int[] elements;
        public MyQueue(){
            //初始化队列
            elements = new int[0];
        }
        //入队
        public void add(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 poll(){
            //找到队列第一个元素
            int element = elements[0];
            //新建队列
            int[] newArr = new int[elements.length-1];
            //复制原队列到新队列
            for(int i=0;i<newArr.length;i++){
                newArr[i]=elements[i+1];
            }
            elements=newArr;
            return element;
        }
    
        //判断队列是否为空
        public boolean isEmpty(){
            return elements.length==0;
        }
    
        public static void main(String[] args) {
            MyQueue mq = new MyQueue();
            mq.add(6);
            mq.add(7);
            mq.add(8);
            System.out.println(mq.poll());
            System.out.println(mq.poll());
            System.out.println(mq.poll());
            System.out.println(mq.isEmpty());
        }
    }
    
    2020-04-01 22:31:08
    赞同 展开评论
问答地址: