Java循环队列(数组实现)
来源:互联网 发布:proxifier linux版 编辑:程序博客网 时间:2024/05/18 20:07
public class CycleArrayQueue{ private static final String TAG = "CycleArrayQueue"; private Object[] queue; private int SIZE = 10;//初始化大小 private int front = 0; private int rear = 0; private int usesize = 0; public CycleArrayQueue() { queue = new Object[SIZE]; } public boolean isEmpty() { return Math.abs(rear - front + SIZE) % SIZE == 0; } public int getSize() { return (Math.abs(rear - front + SIZE) % SIZE); } public void insert(Object obj) throws Exception { if ((rear + 1) % SIZE == front) throw new Exception("栈已满!"); queue[(rear % SIZE)] = obj; rear = (rear + 1) % SIZE; usesize++; } public void delete() throws Exception { if ((front + 1) % SIZE == rear) throw new Exception("空栈!"); queue[(front % SIZE)] = null; front = (front + 1) % SIZE; usesize--; } public void display() throws Exception { if (usesize == 0) throw new Exception("空队列!"); if (rear >= front) { for (int i = front; i < rear; i++) { System.out.print(queue[i] + "<-"); } } else { for (int i = front; i < SIZE; i++) { System.out.print(queue[i] + "<-"); } for (int i = 0; i < rear; i++) { System.out.print(queue[i] + "<-"); } } System.out.println(""); } public static void main(String[] args) throws Exception { CycleArrayQueue caq = new CycleArrayQueue(); caq.insert("123"); caq.insert("=="); caq.insert("tt123"); caq.insert("gg"); caq.display(); System.out.println(caq.getSize()); caq.delete(); caq.delete(); caq.insert("1="); caq.insert("2="); caq.insert("3="); caq.insert("4="); caq.insert("5="); caq.insert("6="); caq.insert("7=");// caq.insert("8=");// caq.insert("op="); caq.display(); }}
0 1
- Java循环队列(数组实现)
- 循环数组实现队列(java)。
- Java数组实现循环队列
- 数组实现循环队列(Java)
- java循环数组实现队列
- JAVA实现数组队列,循环数组队列,链式队列
- java实现 用数组实现循环队列
- Java实现 数组实现循环队列
- 队列的数组实现(循环队列)
- Java数组实现循环队列、Java链表实现队列
- 使用数组实现栈和循环队列(JAVA语言)
- 数据结构(java语言描述)-- 队列的循环数组实现
- java使用数组实现循环队列
- java 利用数组实现循环队列
- Java用循环数组实现队列
- java队列的循环数组实现
- 数组实现循环队列
- 数组实现循环队列
- 我和青春
- 为RecyclerView打造通用adapter
- Java队列(数组实现)
- JAVA概念之面向对象
- linux--静态库和动态库(3)
- Java循环队列(数组实现)
- 解压Zip文件出现IllegalArgumentException错误
- UML类图-时序图
- 清华大学校长邱勇在2016级本科生开学典礼上的讲话 | 在宁静中创造美好未来
- HTML 5 <center> 标签
- Android中的常用SQLite语句
- CArray的用法
- IntelliJ IDEA 常用设置讲解
- 工厂方法模式(Factory Method Pattern)