JavaScript PriorityQueue
2024-09-05 21:50:13
function PriorityQueue() {
var items = [];
function QueueElement(element, priority) {
this.element = element;
this.priotity = priority
}
this.enqueue = function(element, priority) {
var queueElement = new QueueElement(element, priority);
if (this.isEmpty()) {
items.push(queueElement)
} else {
var added = false;
for (var i = 0; i < items.length; i++) {
if (queueElement.priority < items[i].priority) {
items.splice(i, 0, queueElement);
added = true;
break
}
}
if (!added) {
items.push(queueElement)
}
}
}
this.print = function() {
console.log(items.toString())
}
this.isEmpty = function() {
return items.length == 0;
}
}
var priorityQueue = new PriorityQueue();
priorityQueue.enqueue('jack', 1);
priorityQueue.enqueue('shidengyun', 2);
priorityQueue.print();
最新文章
- tomcat-maven-plugin
- 由fdopen和fopen想到的
- Python中的元类和__metaclass__
- ibatis基本内容简介
- ubantu安装jdk来配置hadoop
- C# Windows - RadioButton&;CheckBox
- 探究绑定事件的this指向以及event传参的小问题
- PDO数据访问抽象层
- 洛谷 [P3973] 线性代数
- redis 持久化之 RDB
- kettle变量(param命名参数2)
- python学习-python入门
- 序言:我为什么学Perl
- 广师大python学习笔记求派的值
- Codeforces 109D String Transformation 字符串 哈希 KMP
- ChinaCock界面控件介绍-CCButton
- 在CentOS 7上安装Nginx服务器
- sqlserver服务器名称改成本地IP地址登录
- POJ 2195 Going Home 最小费用流 难度:1
- 新手Python第二天(存储)