5.1 队列的操作
队列是特殊的列表,只能一端入队(队尾)插入操作,一端出队(队头)删除操作。底层用数组,利用javascript数组优于其它语言的数组的方法,shift();删除第一个元素,push();队尾添加元素。分别对应出队,入队操作。
队列是一种先进先出的数据类型(FIFO);
一些常见用处:jQuery的动画执行顺序,打印机打印顺序,操作系统进程执行顺序,一些银行等的排队问题。
5.2 队列的实现(用数组实现的队列);
队列中的一些方法,
入队队列队尾添加一个元素enqueue();
出队队列队头删除一个元素dequeue();
获取队列队头的元素front();
获取队列队尾的元素back();
队列的长度length;
清空队列元素remove();
判断队列元素是否为空isEmpty();
获取队列元素qDatas();

 function Queue() {
  this.dataStore = [];
  this.length = 0;
  // this.enqueue = enqueue;
  // this.dequeue = dequeue;
  // this.remove = remove; //清空队列
  // this.isEmpty = isEmpty; //判断队列是否为空
  // this.qDatas = qDatas; //获取队列元素
  // this.front = front; //获取队列第一个元素
  // this.back = back; //获取队列最后一个元素
}
Queue.prototype.enqueue = function(element) {
  this.dataStore.push(element);
  this.length++;
};
Queue.prototype.dequeue = function() {
  this.dataStore.shift();
  this.length--;
};
Queue.prototype.remove = function() {
  this.dataStore = [];
  this.length = 0;
};
Queue.prototype.isEmpty = function() {
  return this.length == 0 ? true : false;
};
Queue.prototype.qDatas = function() {
  var datas = "";
  for(var i = 0;i < this.dataStore.length;i++) {
    datas += this.dataStore[i]+"\n";
  }
  return datas;
};
Queue.prototype.front = function() {
  return this.dataStore[0];
};
Queue.prototype.back = function() {
  return this.dataStore[this.dataStore.length-1];
};

5.3 队列的使用-方块舞伴的分配
...
5.4 使用队列对数据进行排序

JavaScript--数据结构之队列的更多相关文章

  1. javascript数据结构之队列

    首先什么是队列? 排队买东西就是生活中队列的实际例子,在队伍中大家必须按照顺序来,不能插队,新来的人只能排在队伍的最后面.新加入的人相当于队列的后端加入的元素,队伍最前面买完东西的人离开队伍相当于是队 ...

  2. JavaScript数据结构,队列和栈

    在JavaScript中为数组封装了大量的方法,比如:concat,pop,push,unshift,shift,forEach等,下面我将使用JavaScript提供的这些方法,实现队列和栈的操作. ...

  3. JavaScript数据结构-5.队列

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. JavaScript 数据结构与算法之美 - 线性表(数组、栈、队列、链表)

    前言 基础知识就像是一座大楼的地基,它决定了我们的技术高度. 我们应该多掌握一些可移值的技术或者再过十几年应该都不会过时的技术,数据结构与算法就是其中之一. 栈.队列.链表.堆 是数据结构与算法中的基 ...

  5. 学习javascript数据结构(一)——栈和队列

    前言 只要你不计较得失,人生还有什么不能想法子克服的. 原文地址:学习javascript数据结构(一)--栈和队列 博主博客地址:Damonare的个人博客 几乎所有的编程语言都原生支持数组类型,因 ...

  6. javascript数据结构与算法---队列

    javascript数据结构与算法---队列 队列是一种列表,不同的是队列只能在队尾插入元素,在队首删除元素.队列用于存储按顺序排列的数据,先进先出,这点和栈不一样(后入先出).在栈中,最后入栈的元素 ...

  7. JavaScript数据结构——栈和队列

    栈:后进先出(LIFO)的有序集合 队列:先进先出(FIFO)的有序集合 --------------------------------------------------------------- ...

  8. JavaScript数据结构——队列的实现

    前面楼主简单介绍了JavaScript数据结构栈的实现,http://www.cnblogs.com/qq503665965/p/6537894.html,本次将介绍队列的实现. 队列是一种特殊的线性 ...

  9. 为什么我要放弃javaScript数据结构与算法(第四章)—— 队列

    有两种结构类似于数组,但在添加和删除元素时更加可控,它们就是栈和队列. 第四章 队列 队列数据结构 队列是遵循FIFO(First In First Out,先进先出,也称为先来先服务)原则的一组有序 ...

  10. JavaScript数据结构与算法-队列练习

    队列的实现 // 队列类 function Deque () { this.dataStore = []; this.enqueueFront = enqueueFront; this.enqueue ...

随机推荐

  1. Codeforces Round #313 C. Gerald&#39;s Hexagon(放三角形)

    C. Gerald's Hexagon time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  2. PostgreSQL数据库创建/删除

    方法1 - 系统命令 sudo su - postgres #切换到postgres用户(系统用户) createdb weichen #创建数据库 psql #直接訪问数据库(默认进入本地postg ...

  3. 20.发送http请求服务 ($http)

    转自:https://www.cnblogs.com/best/tag/Angular/ 服务从代码直接与服务器进行交互,底层是通过实现,与中http服务从AngularJS代码直接与Web服务器进行 ...

  4. 有关R6034错误的思考

    作者:朱金灿 来源:http://blog.csdn.net/clever101 我们有时会遇到R6034错误,工程明明编译通过,但是运行时却出现: 网上的解决办法很多,但是有效的不多,特别是对阐述这 ...

  5. 学习思考:思考>努力

    学.习.思.考 学习.思考,这2个词,4个字,其实代表了4个不同的动作:学.习.思.考. 学,就是从外部(他人)获得. 习,就是练习,行动. 思,就是从内部(自己)获得. 考,就是考量,检测. 因此, ...

  6. Server.UrlEncode与HttpUtility.UrlEncode的区别

    一.HttpUtility.UrlEncode 方法 1.public static string UrlEncode(byte[]) 将字节数组转换为已编码的 URL 字符串. 2.public s ...

  7. dos 实用命令搜集

    dos 命令: 1.netstat -an 2.XP下打开凭证管理:  control keymgr.dll 3.刷新DHCP协议,重新自动获取IP *   ipconfig/release 命令来丢 ...

  8. <QT障碍之路>QApplication:No such file or directory

    原因:QT5将很多部件都移动了QT widgets模块中. 解决方法: 在.pro文件中添加 greaterThan(QT_MAJOR_VERSION, ): QT += widgets

  9. 解决MyEclipse中安装或升级ADT之后SDK Target无法显示的问题

        故障现象,在MyEclipse里面安装完最新的android sdk和ADT之后,无法新建项目,Build Target为空,显示一直在loading.即如下面图里面显示的,Target Na ...

  10. android 动画xml属性具体解释

    /** * 作者:crazyandcoder * 联系: * QQ : 275137657 * email: lijiwork@sina.com * 转载请注明出处! */ android 动画属性具 ...