<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body> <script type="text/javascript">
1.队列(FIFO):先进先出
2.创建一个类表示队列
function Queue(){
//这里是属性和方法
}
3.使用数组来存储队列中的元素
var items=[];
4.声明队列的方法
enqueue(elements):向队列尾部添加一个或多个新元素
dequeue():移除队列第一个元素,并返回移除的元素
front():返回添加到队列中的第一个元素
isEmpty():如果队列中元素为空,返回true,否则返回flase
size():返回队列中元素的个数
5.实现enqueue(elements)方法
this.enqueue=function(elements){
items.push(elements);
}
6.实现dequeue()方法
this.dequeue=function(){
return items.shift();
}
7.实现front()方法
this.front=function(){
return items[0];
}
8.实现isEmpty()方法
this.isEmpty=function(){
return items.length==0;
}
9.实现size()方法
this.size=function(){
return items.length;
}
10.实现print()方法
this.print=function(){
console.log(items.toString());
}
11.实现cleat()方法
this.clear=function(){
items=[];
}
12.队列的全部代码
function Queue(){
var items=[]; function enqueue(elements){
items.push(elements);
}; function dequeue(){
return items.shift();
}; function front(){
return items[0];
}; function isEmpty(){
return items.length==0;
}; function size(){
return items.length;
}; function print(){
console.log(items.toString());
}; function clear(){
items=[];
};
}
-------------------------------------------
使用Queue类 1.实例化Queue类,并判断是否为空
var queue=new Queue();
console.log(queue.isEmpty()); //true
2.添加一些元素
queue.enqueue('join');
queue.enqueue('jack');
queue.enqueue('caml');
queue.print();
console.log(queue.size()); //3
console.log(queue.isEmpty()); //false
queue.dequeue();
queue.dequeue();
queue.print();
</script>
</body>
</html>

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

  1. JS数据结构——队列

    创建一个自己的类来表示一个队列 function Queue() { //这里写属性和方法 } 首先需要一个用于存储队列中元素的数据结构,可以用数组 let items = [] 接下来声明一些队列可 ...

  2. js数据结构之栈、队列(数据结构与拉火车游戏)

    1.js实现队列的数据结构(先进先出) function Queue (array) { if(Object.prototype.toString.call(array)!="[object ...

  3. (js描述的)数据结构[队列结构,优先级队列](3)

    (js描述的)数据结构[队列结构](3) 一.队列结构的特点: 1.基于数组来实现,的一种受限的线性结构. 2.只允许在表头进行删除操作,在表尾进行插入操作. 3.先进先出(FIFO) 二.队列的一些 ...

  4. 数据结构与算法 --- js描述队列

    js描述队列 队列的特性是只能在队尾插入元素,在队首删除元素,先进先出: 队列被用在很多地方,比如提交操作系统执行的一系列进程,打印任务池,模拟现实中的排队: //队列类 function Queue ...

  5. JS数据结构与算法-队列结构

    队列结构 一.认识队列 受限的线性结构: 我们已经学习了一种受限的线性结构:栈结构. 并且已经知道这种受限的数据结构对于解决某些特定问题,会有特别的 效果. 下面,我们再来学习另外一个受限的数据结构: ...

  6. JS数据结构第四篇 --- 栈

    一.什么是数据结构栈 在数据结构中有一个栈结构,在内存空间中也有一个栈空间,这两个”栈“是两个不同的概念.这篇我们说的是数据结构中的栈.栈是一种特殊的线性表,特殊性在哪?就是只能在栈顶进行操作,往栈顶 ...

  7. JS数据结构与算法-概述

    JS数据结构与算法概述 数据结构: 计算机存储, 组织数据的方式, 就像锅碗瓢盆 算法: 一系列解决问题的清晰指令, 就像食谱 两者关系: 程序 = 数据结构 + 算法 邂逅数据结构与算法 什么是数据 ...

  8. java 数据结构 队列的实现

    java 数据结构队列的代码实现,可以简单的进行入队列和出队列的操作 /** * java数据结构之队列的实现 * 2016/4/27 **/ package cn.Link; import java ...

  9. C++ 泛型 编写的 数据结构 队列

    平时编程里经常需要用到数据结构,比如  栈和队列 等,  为了避免每次用到都需要重新编写的麻烦现将  C++ 编写的 数据结构 队列  记录下来,以备后用. 将 数据结构  队列  用头文件的形式写成 ...

  10. JS实现队列

    JS实现队列: 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表.进行插入操作的端称为队尾 ...

随机推荐

  1. 论文日记二:VGG

    1. 导读 前面我们回顾了AlexNet,AlexNet的作者指出模型的深度很重要,而VGG最大的贡献就在于对网络模型深度的研究. VGG原论文:<Very Deep Convolutional ...

  2. CentOS 8搭建Kubernetes-k8s集群-1.18.5

    目录 环境配置 服务器信息 软件版本 环境正确性 端口正常开放 kube-master节点端口 kube-node节点端口 配置主机互信 配置hosts映射 配置ssh密钥 禁用swap 关闭SELi ...

  3. Vue报错: Property or method "changeLoginType" is not defined on the instance but referenced during render

    原因 我这里是因为我代码中的方法不存在,我漏写了,后补充上就好了 解决方案 在methods中添加如下代码: // 修改登录状态 changeLoginType(bool){ this.loginTy ...

  4. 二 APPIUM Android自动化 环境搭建(转)

    1.安装JAVA运行环境 2.安装Android开发环境 3.安装nodejs 下载地址:https://nodejs.org/en/ 下载完成之后双击安装. 4.安装APPIUM,Appium服务端 ...

  5. Programming abstractions in C阅读笔记: p114-p117

    <Programming Abstractions in C>学习第48天,p114-p117,​总结如下: 一.技术总结 主要通过random number介绍了随机数的相关用法,int ...

  6. [kubernetes]二进制部署k8s集群-基于containerd

    0. 前言 k8s从1.24版本开始不再直接支持docker,但可以自行调整相关配置,实现1.24版本后的k8s还能调用docker.其实docker自身也是调用containerd,与其k8s通过d ...

  7. 【pytorch】目标检测:YOLO的基本原理与YOLO系列的网络结构

    利用深度学习进行目标检测的算法可分为两类:two-stage和one-stage.two-stage类的算法,是基于Region Proposal的,它包括R-CNN,Fast R-CNN, Fast ...

  8. virtualbox克隆虚拟机

    1.选择要克隆的虚拟机 2.设置克隆机的名称和存放位置 3.选择克隆类型 4.克隆结果

  9. 4、Mybatis核心配置文件详解

    4.1.environments <!-- environments标签:配置多个连接数据库的环境 default属性:设置默认使用的环境的id --> <environments ...

  10. MATLAB入门小操作(数据类型)

    这是一篇有助于快速上手MATLAB软件的文章(新手向).(学习过其他的语言更容易看懂) 数据类型 这篇文章我想从MATLAB中的数据类型出发去列举一些经常使用的操作.MATLAB中的数据类型包括其他语 ...