0
点赞
收藏
分享

微信扫一扫

java自写代码--循环队列、链队的基本操作(未写完)

晒大太阳了 2022-04-14 阅读 70

一、循环队列

1.代码

含初始化、入队列、出队列、求队列长度、打印队列

//循环队列的基本操作
public class queue {

	public int base[];
	public int front;
	public int rear;
	public int data;
	public int maxsize=6;
	
	public queue() {
		this(10);
	}
	
	public queue(int maxsize) {//队列初始化
		base = new int[maxsize];
		front = 0;
		rear = 0;
	}
	
	public boolean queueEmpty() {//判断队列是否为空
		if(front==rear) {
			return true;
		}else{
			return false;
		}
	}
	
	public boolean queueFull() {//判断队列是否满
		if((rear+1)%maxsize==front) {
			return true;
		}else {
			return false;
		}
	}
	
	public void EnQueue(int data) {//循环入队列
		if((rear+1)%maxsize==front) {//当队列满时
			return;
		}
		base[rear]=data;
		rear = (rear+1)%maxsize;//队尾指针加一
	}
	
	public void DeQueue() {//先进先出,循环出队列
		if(front==rear) {//如果队列空
			return;
		}
		front = (front+1)%maxsize;//队头指针加一
	}
	
	public void showQueue() {//打印队列
		for(int i=front;i<rear;i++) {
			System.out.print(base[i]+" ");
		}
	}
	
	public int lenQueue() {//返回队列长度
		int length = (rear-front+maxsize)%maxsize;
		return length;
	}
	
	public static void main(String[] args) {
		queue q = new queue();
		q.EnQueue(1);
		q.EnQueue(2);
		q.EnQueue(3);
		q.EnQueue(4);
		q.EnQueue(5);
		System.out.print("初始队列:");
		q.showQueue();
		
		System.out.println("\t");
		System.out.print("元素循环出去后的队列:");
		q.DeQueue();
		q.showQueue();
		
		System.out.println("\t");
		System.out.print("队列长度为:"+q.lenQueue());
		
	}
	
}

2.实现截图

 

二、链队

1.代码

public class Main {

}

2.实现截图

举报

相关推荐

0 条评论