Js 棧和堆的實現

1、隊列和堆棧的簡單介紹javascript

1.一、隊列的基本概念php

隊列:是一種支持先進先出(FIFO)的集合,即先被插入的數據,先被取出!java

 

1.二、堆棧的基本概念數組

堆棧:是一種支持後進先出(LIFO)的集合,即後被插入的數據,先被取出!瀏覽器

以下圖所示:google

2、 在JavaScript中實現隊列和堆棧spa

在JavaScript中實現隊列和數組主要是經過數組,js數組中提供瞭如下幾個方法能夠讓咱們很方便實現隊列和堆棧:.net

shift:從數組中把第一個元素刪除,並返回這個元素的值。3d

unshift: 在數組的開頭添加一個或更多元素,並返回新的長度code

push:在數組的中末尾添加元素,並返回新的長度

pop:從數組中把最後一個元素刪除,並返回這個元素的值。

2.一、實現隊列

<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瀏覽器控制檯輸出的效果以下圖所示:

 

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)

在google瀏覽器控制檯輸出的效果以下圖所示

相關文章
相關標籤/搜索