博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java数据结构——优先级队列
阅读量:6689 次
发布时间:2019-06-25

本文共 1605 字,大约阅读时间需要 5 分钟。

//=================================================// File Name       :	PriorityQueue_demo//------------------------------------------------------------------------------// Author          :	Common//类名:PriorityQueue//属性://方法:class PriorityQueue{	private int maxSize;					//队列的长度	private long[] queueArray;		//创建队列的数组的引用	private int curNum;					//创建当前元素的个数		public PriorityQueue(int s) {					//构造函数		this.maxSize = s;		queueArray = new long[maxSize]; 		//创建对象		curNum = 0;									//当前的元素的个数是0	}		public void insert(long item){		int j;		if(curNum == 0){								//输入1个数,就是1个数			queueArray[curNum++] = item;						}else{														//左边是rear,右边是front,左边总比右边大			for(j=curNum-1;j>=0;j--){				//当有2个数时,若第2个数比第1个数大,则交换				if(item>queueArray[j]){				//j在-1的时候停止,rear=0,front=curNum-1					queueArray[j+1] = queueArray[j];		// 1 2 -> 1 1 -> 2 1 							}else{break;}												// 2 1 3 -> 2 1 1 -> 2 2 1 -> 3 2 1			}																						queueArray[j+1] = item;			curNum++;		}	}		public long remove(){		return queueArray[--curNum];	}		public long peekFront(){		return queueArray[curNum-1];			}		public boolean isEmpty(){		return (curNum==0);	}		public boolean isFull(){		return (curNum==maxSize);	}		}//主类//Function        : 	PriorityQueue_demopublic class PriorityQueue_demo {	public static void main(String[] args) {		// TODO 自动生成的方法存根		PriorityQueue queue_demo = new PriorityQueue(5);		queue_demo.insert(30);		queue_demo.insert(10);		queue_demo.insert(50);		queue_demo.insert(40);		queue_demo.insert(20);		while( !queue_demo.isEmpty()){			long value = queue_demo.remove();			System.out.println(value+"、");		}	}}

 

转载地址:http://cmkoo.baihongyu.com/

你可能感兴趣的文章
Office 365 用户指引 3 ——Exchange Online-邮件功能介绍
查看>>
Office 365管理员指引 14——Sharepoint 日历
查看>>
日常Shell处理命令
查看>>
入门到精通pl/sql编程(千里之行始于足下)3篇
查看>>
Keepalived架构高可用的redis数据库缓存服务器
查看>>
ActiveMQ内存设置和流控
查看>>
ubuntu中apt-get的默认安装路径
查看>>
老调长谈的Flex 4.6 可视组件的生命周期
查看>>
Windows下Subversion配置管理员指南
查看>>
浏览器解析GZIP
查看>>
我的友情链接
查看>>
伪造HTTP请求中的IP信息
查看>>
rocketmq 延迟队列的实现
查看>>
java:eclipse:windows开发环境log4j系统找不到指定的路径
查看>>
1 Cisco ASA基础
查看>>
MYSQL主从同步
查看>>
apache配置转发到后端的tomcat/jira
查看>>
Elasticsearch过滤与聚合的先后顺序java实现
查看>>
记录linux设置定时执行python脚本以及输出到指定文件
查看>>
我的友情链接
查看>>