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程序设计有所帮助。
相关文章
Idea springboot springCloud热加载热调试两种常用方式
这篇文章主要介绍了Idea springboot springCloud热加载热调试常用的两种方式,在项目开发的过程中,需要修改调试的时候偶每次都需要重启项目浪费时间,下面是我整理的两种常用的两种方式,需要的朋友可以参考下2023-04-04
Spring项目中Ordered接口的应用之全局过滤器(GlobalFilter)的顺序控制
在Spring框架,尤其是Spring Cloud Gateway或Spring WebFlux项目中,Ordered接口扮演着重要的角色,特别是在实现全局过滤器(GlobalFilter)时,用于控制过滤器执行的优先级,下面将介绍如何在Spring项目中使用Ordered接口来管理Global Filter的执行顺序,需要的朋友可以参考下2024-06-06
Springboot 使用内置tomcat禁止不安全HTTP的方法
这篇文章主要介绍了Springboot 使用内置tomcat禁止不安全HTTP的方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-07-07
SpringCloud Gateway使用redis实现动态路由的方法
这篇文章主要介绍了SpringCloud Gateway使用redis实现动态路由的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-01-01


最新评论