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();

最新文章

  1. tomcat-maven-plugin
  2. 由fdopen和fopen想到的
  3. Python中的元类和__metaclass__
  4. ibatis基本内容简介
  5. ubantu安装jdk来配置hadoop
  6. C# Windows - RadioButton&amp;CheckBox
  7. 探究绑定事件的this指向以及event传参的小问题
  8. PDO数据访问抽象层
  9. 洛谷 [P3973] 线性代数
  10. redis 持久化之 RDB
  11. kettle变量(param命名参数2)
  12. python学习-python入门
  13. 序言:我为什么学Perl
  14. 广师大python学习笔记求派的值
  15. Codeforces 109D String Transformation 字符串 哈希 KMP
  16. ChinaCock界面控件介绍-CCButton
  17. 在CentOS 7上安装Nginx服务器
  18. sqlserver服务器名称改成本地IP地址登录
  19. POJ 2195 Going Home 最小费用流 难度:1
  20. 新手Python第二天(存储)

热门文章

  1. axios动态数据的获取
  2. vue v-model 的使用
  3. Rsync+inotify 实时数据同步 inotify master 端的配置
  4. WAF防火墙学习
  5. gcc的-D,-w,-W,-Wall,-O3这些参数的意义
  6. sqlmap 基本使用步骤(二)
  7. luogu2046 海拔
  8. Java final、static 关键字
  9. OPTIONS请求后台处理 跨域Filter
  10. NIO编程模式示例