Java数据结构之队列的简单定义与使用方法

 更新时间:2017年10月24日 09:31:07   作者:CharlinGod  
这篇文章主要介绍了Java数据结构之队列的简单定义与使用方法,简单描述了队列的功能、特点,并结合java实例形式分析了队列的简单定义与使用方法,需要的朋友可以参考下

本文实例讲述了Java数据结构之队列的简单定义与使用方法。分享给大家供大家参考,具体如下:

一、概述:

1、说明:

队列的原则时先进先出,就像生活中排队取票一样,谁排在前面谁先得到

2、有五个属性:

1)数组元素
2)最大空间
3)长度
4)队头
5)队尾

3、示例图:

二、代码实现

/**
 * @描述 对列
 * @项目名称 Java_DataStruct
 * @包名 com.java.stack
 * @类名 Queue
 * @author chenlin
 * @version 1.0
 * @SVN $Rev$
 */
public class Queue {
 private long[] arr;
 private int maxSize;// 最大空间
 private int len;// 有效长度
 private int head;// 队头
 private int end;// 队尾
 public Queue(int size) {
 this.maxSize = size;
 this.arr = new long[maxSize];
 this.len = 0;
 this.head = 0;
 this.end = -1;
 }
 /**
 * 从队尾插入数据
 *
 * @param value
 */
 public void insert(long value) {
 arr[++end] = value;
 len++;
 }
 /**
 * 从队头移除数据
 */
 public long remove() {
 len--;
 return arr[head++];
 }
 /**
 * 判断是否为空
 *
 * @return
 */
 public boolean isEmpty() {
 return (len == 0);
 }
 /**
 * 判断是否满了
 *
 * @return
 */
 public boolean isFull() {
 return (len == maxSize - 1);
 }
 /**
 * 获得队列的有效长度
 *
 * @return
 */
 public int size() {
 return len;
 }
 public static void main(String[] args) {
 Queue queue = new Queue(50);
 queue.insert(22);
 queue.insert(33);
 queue.insert(44);
 queue.insert(534);
 queue.insert(21);
 queue.insert(55);
 System.out.println("脚本之家测试结果:");
 while (!queue.isEmpty()) {
  System.out.println(queue.remove());
 }
 }
}

运行结果:

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

相关文章

  • Java接入通义千问的简单方法示例

    Java接入通义千问的简单方法示例

    ​ 通义千问是阿里云开发的大语言模型(Large language Model )LLM,旨在提供广泛的知识和普适性,可以理解和回答各领域中的问题,这篇文章主要给大家介绍了关于Java接入通义千问的简单方法,需要的朋友可以参考下
    2024-02-02
  • Java超详细整理讲解各种排序

    Java超详细整理讲解各种排序

    这篇文章主要介绍了Java常用的排序算法及代码实现,在Java开发中,对排序的应用需要熟练的掌握,这样才能够确保Java学习时候能够有扎实的基础能力。那Java有哪些排序算法呢?本文小编就来详细说说Java常见的排序算法,需要的朋友可以参考一下
    2022-07-07
  • 使用stream的Collectors.toMap()方法常见的问题及解决

    使用stream的Collectors.toMap()方法常见的问题及解决

    这篇文章主要介绍了使用stream的Collectors.toMap()方法常见的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Java实现字符串转换成可执行代码的方法

    Java实现字符串转换成可执行代码的方法

    今天小编就为大家分享一篇Java实现字符串转换成可执行代码的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • EL调用Java方法_动力节点Java学院整理

    EL调用Java方法_动力节点Java学院整理

    简单来说,我们在一个类中的某个方法,可以使用EL进行调用,这个能被EL表达式调用的方法称之为EL函数,但是这种方式必须满足两点要求,具体哪两点,大家可以参考下本文
    2017-07-07
  • SpringBoot 容器刷新前回调ApplicationContextInitializer

    SpringBoot 容器刷新前回调ApplicationContextInitializer

    这篇文章主要为大家介绍了SpringBoot 容器刷新前回调ApplicationContextInitializer使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • IntelliJ IDEA 如何彻底删除项目的步骤

    IntelliJ IDEA 如何彻底删除项目的步骤

    本篇文章主要介绍了IntelliJ IDEA 如何彻底删除项目的步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • 实例解析Java关于static的作用

    实例解析Java关于static的作用

    只要是有学过Java的都一定知道static,也一定能多多少少说出一些作用和注意事项。文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • Spring Boot启动过程(六)之内嵌Tomcat中StandardHost、StandardContext和StandardWrapper的启动教程详解

    Spring Boot启动过程(六)之内嵌Tomcat中StandardHost、StandardContext和Sta

    这篇文章主要介绍了Spring Boot启动过程(六)之内嵌Tomcat中StandardHost、StandardContext和StandardWrapper的启动教程详解,需要的朋友可以参考下
    2017-04-04
  • springboot定时任务详解

    springboot定时任务详解

    这篇文章主要介绍了springboot定时任务的相关资料,帮助大家更好的理解和使用springboot框架,感兴趣的朋友可以了解下
    2021-01-01

最新评论