温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2020-10-07 22:06:50 来源:脚本之家 阅读:165 作者:CharlinGod 栏目:编程语言

本文实例讲述了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数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

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

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI