zoukankan      html  css  js  c++  java
  • JavaScript的数组实现队列与堆栈的方法

    一、队列和堆栈的简单介绍

    1.1、队列的基本概念

    队列:是一种支持先进先出(FIFO)的集合,即先被插入的数据,先被取出!

    如下图所示:

    JavaScript的数组实现队列与堆栈的方法

    1.2、堆栈的基本概念

    堆栈:是一种支持后进先出(LIFO)的集合,即后被插入的数据,先被取出!

    如下图所示:

    JavaScript的数组实现队列与堆栈的方法

    二、 在JavaScript中实现队列和堆栈

    在JavaScript中实现队列和数组主要是通过数组,js数组中提供了以下几个方法可以让我们很方便实现队列和堆栈:

    shift:从数组中把第一个元素删除,并返回这个元素的值。

    unshift: 在数组的开头添加一个或更多元素,并返回新的长度

    push:在数组的中末尾添加元素,并返回新的长度

    pop:从数组中把最后一个元素删除,并返回这个元素的值。

    2.1、实现队列

     代码如下 复制代码
    <script type="text/javascript">
            //创建一个数组来模拟队列
            var a=new Array();
            console.log(a);
            //unshift: 在数组的开头添加一个或更多元素,并返回新的长度
            console.log("入队");
            a.unshift(1)
            console.log(a);//----->1
            a.unshift(2);
            console.log(a);//----->2,1
            a.unshift(3);
            console.log(a);//----->3,2,1
            a.unshift(4);
            console.log(a);//----->4,3,2,1
            console.log("出队,先进先出");
            console.log(a);
            //pop:从数组中把最后一个元素删除,并返回这个元素的值
            a.pop();//----->1
            console.log(a);
            a.pop();//----->2
            console.log(a);
            a.pop();//----->3
            console.log(a);
            a.pop();//----->4
            console.log(a);
    </script>

    在google浏览器控制台输出的效果如下图所示:

    JavaScript的数组实现队列与堆栈的方法

    2.2、实现堆栈

     代码如下 复制代码
    <script type="text/javascript">
            //创建一个数组来模拟堆栈
            var a=new Array();
            console.log(a);
            //push: 在数组的末尾添加一个或更多元素,并返回新的长度
            console.log("入栈");
            a.push(1)
            console.log(a);//----->1
            a.push(2);
            console.log(a);//----->1,2
            a.push(3);
            console.log(a);//----->1,2,3
            a.push(4);
            console.log(a);//----->1,2,3,4
            console.log("出栈,后进先出");
            console.log(a);
            //pop:从数组中把最后一个元素删除,并返回这个元素的值
            a.pop();//----->4
            console.log(a);
            a.pop();//----->3
            console.log(a);
            a.pop();//----->2
            console.log(a);
            a.pop();//----->1
            console.log(a);
    </script>

    在google浏览器控制台输出的效果如下图所示:

    JavaScript的数组实现队列与堆栈的方法

  • 相关阅读:
    NOIP2018 模拟赛(二十二)雅礼NOI
    浅谈左偏树在OI中的应用
    HDU3062&&HDU1814
    2-SAT超入门讲解
    bitset常用用法&&简单题分析
    NOIp2014提高组初赛错题简析
    2018十月刷题列表
    BZOJ 4804: 欧拉心算
    Luogu P2568 GCD
    Luogu P4137 Rmq Problem / mex
  • 原文地址:https://www.cnblogs.com/huangshikun/p/6510537.html
Copyright © 2011-2022 走看看