Java数据结构之有效队列定义与用法示例

 更新时间:2017年10月25日 08:54:20   作者:CharlinGod  
这篇文章主要介绍了Java数据结构之有效队列定义与用法,结合实例形式分析了java有效队列的数据插入、删除、判断、计算等相关操作技巧,需要的朋友可以参考下

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

/**
 * @描述 有序对列
 * 从任何位置插入数据都是有序的
 * @项目名称 Java_DataStruct
 * @包名 com.java.stack
 * @类名 Queue
 * @author chenlin
 */
public class SequeQueue {
 private long[] arr;
 private int maxSize;// 最大空间
 private int len;// 有效长度
 public SequeQueue(int size) {
  this.maxSize = size;
  this.arr = new long[maxSize];
  this.len = 0;
 }
 /**
  *插入数据
  *
  * @param value
  */
 public void insert(long value) {
  int i;
  for (i = 0; i < len; i++) {
   //得到i
   if (value > arr[i]) {
    break;
   }
  }
  //移动数据,把前面的数据往后移动一位
  for (int j = len; j > i; j--) {
   arr[j] = arr[j - 1];
  }
  arr[i] = value;
  len ++;
 }
 /**
  * 移除数据,每次移除最后一位,长度--
  * 数组从0到len - 1;
  */
 public long remove() {
  long value = arr[len - 1];
  len --;
  return value;
 }
 /**
  * 判断是否为空
  *
  * @return
  */
 public boolean isEmpty() {
  return (len == 0);
 }
 /**
  * 判断是否满了
  *
  * @return
  */
 public boolean isFull() {
  return (len == maxSize);
 }
 /**
  * 获得队列的有效长度
  *
  * @return
  */
 public int size() {
  return len;
 }
 public static void main(String[] args) {
  SequeQueue queue = new SequeQueue(8);
  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程序设计有所帮助。

相关文章

  • 详解MySQL的简易封装以及使用

    详解MySQL的简易封装以及使用

    本文主要介绍了MySQL的简易封装以及使用。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • IDEA运行导入的javaweb项目tomcat正常,但是运行失败404问题

    IDEA运行导入的javaweb项目tomcat正常,但是运行失败404问题

    这篇文章主要介绍了IDEA运行导入的javaweb项目tomcat正常但是运行失败404问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • Spring入门到精通之Bean标签详解

    Spring入门到精通之Bean标签详解

    这篇文章主要为大家详细介绍了Spring中Bean的标签,文中的示例代码讲解详细,对我们学习Spring有一定的帮助,快跟随小编一起学习学习吧
    2022-07-07
  • Java实现雪花算法的原理和实战教程

    Java实现雪花算法的原理和实战教程

    这篇文章主要介绍了Java实现雪花算法的原理和实战教程,本文通过语言表述和代码的实现讲解了该项算法,,需要的朋友可以参考下
    2021-06-06
  • 详解如何将springboot项目导出成war包

    详解如何将springboot项目导出成war包

    这篇文章主要介绍了详解如何将springboot项目导出成war包,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • java 面试题闰年判断详解及实例

    java 面试题闰年判断详解及实例

    这篇文章主要介绍了java面试题 闰年判断的相关资料,需要的朋友可以参考下
    2017-03-03
  • 微信公众号测试账号自定义菜单的实例代码

    微信公众号测试账号自定义菜单的实例代码

    这篇文章主要介绍了微信公众号测试账号自定义菜单的实例代码,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-02-02
  • 轻松掌握Java注解,让编程更智能、更优雅

    轻松掌握Java注解,让编程更智能、更优雅

    轻松掌握Java注解?没问题!想要让你的Java代码更具可读性、维护性,同时提升开发效率?本指南将带你快速入门Java注解的世界,只需短短几分钟,你就能揭秘这个强大的编程工具,让编写有声明性逻辑的代码变得轻而易举,赶快一起来探索吧!
    2024-01-01
  • 基于Session的国际化实现方法

    基于Session的国际化实现方法

    下面小编就为大家带来一篇基于Session的国际化实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • Java设计模式之代理模式解析

    Java设计模式之代理模式解析

    这篇文章主要介绍了Java设计模式之代理模式解析,代理模式为一个对象提供一个替身,以控制对这个对象的访问,即通过代理对象访问目标对象,需要的朋友可以参考下
    2023-12-12

最新评论