priorityqueue.java

来自「java 数据结构的一些简单实例和一些线程的应用主要是面向初学者」· Java 代码 · 共 69 行

JAVA
69
字号
class PriorityQ{
private int[] a;
private int item;
private int rear;
private int front;
private int maxsize;

public PriorityQ(int max){
	a=new int[max];
	item=0;
	rear=-1;
	front=0;
	maxsize=max;
}
public boolean isfull(){
	return (item==maxsize);
}
public boolean isempty(){
	return (item==0);
}
public int peek(){
	return a[front];
}
public int size(){
	return item;
}
public void insert(int value){
	int j;
	if(item==0){
		a[item++]=value;
	}
	else{
		for(j=item-1;j>0;j--)
		{
			if(a[j]<value)
			a[j+1]=a[j];
			else
				break;
		}
	a[j+1]=value;
	item++;
	}
	
}
public int remove(){
	return a[--item];
}
}


class PriorityQueue{
	public static void main(String[] args){
		int max=100;
		PriorityQ pq=new PriorityQ(max);
		pq.insert(20);
		pq.insert(34);
		pq.insert(56);
		pq.insert(34);
		pq.insert(15);
		
		while(!pq.isempty())
		{
			int n=pq.remove();
			System.out.println(n);
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?