• [javaSE] 数据结构(队列)


    队列是一种线性存储结构,他有以下特点:

    1.队列中数据是按照“先进先出”方式进出队列的

    2.队列只允许在“队首”进行删除操作,在“队尾”进行插入操作

    3.队列通常包含两种操作:入队列和出队列

     

    使用数组实现队列

    定义一个类ArrayQueue

    实现入队列方法push()

    实现出队列方法pop()

    实现返回队首方法front()

    实现返回队列长度方法size()

    public class ArrayQueue {
        private int[] mArray;
        private int mCount;
        public ArrayQueue(int num) {
            mArray=new int[num];
            mCount=0;
        }
        /**
         * 入队列
         * @param item
         */
        public void push(int item){
            mArray[mCount]=item;
            mCount++;
        }
        /**
         * 出队列
         * @return
         */
        public int pop(){
            int top=mArray[0];
            mCount--;
            //往前移动一元素
            for(int i=1;i<=mCount;i++){
                mArray[i-1]=mArray[i];
            }
            return top;
        }
        /**
         * 队列长度
         * @return
         */
        public int size(){
            return mCount;
        }
        /**
         * 打印数组
         */
        public void print(){
            for(int i=0;i<=mCount-1;i++){
                System.out.print(mArray[i]+",");
            }
        }
        /**
         * @param args
         */
        public static void main(String[] args) {
            ArrayQueue queue=new ArrayQueue(3);
            queue.push(5);
            queue.push(6);
            queue.push(7);
            queue.print();//输出 5,6,7,
            queue.pop();
            queue.print();//输出 6,7,
            queue.push(8);
            queue.print();//输出 6,7,8,
        }
    
    }

     

  • 相关阅读:
    并发编程之多线程理论
    僵尸进程和孤儿进程
    并发编程之多进程
    并发编程之多进程理论
    操作系统介绍
    面向对象和网络编程练习题
    网络编程——socket编程
    面向对象练习题
    面向对象软件开发实战
    异常处理
  • 原文地址:https://www.cnblogs.com/taoshihan/p/5595684.html
Copyright © 2020-2023  润新知