当前位置: 移动技术网 > IT编程>开发语言>Java > Java数据结构之有效队列定义与用法示例

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

2019年07月19日  | 移动技术网IT编程  | 我要评论

本文实例讲述了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程序设计有所帮助。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网