2

1.栈(stack)

栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。(后入先出)
入栈使用 push() 方法,出栈使用 pop() 方法

clipboard.png

<script>
  function sum(num){
     let arr1=[]
       while(num>0){
           let num1=num--
           arr1.push(num1)
           console.log("入栈",num1)
           
       }
       console.log(arr1)
       while(arr1.length>0){
           console.log("出栈",arr1.pop())
           console.log("出站",arr1)
       }
 }
   sum(7)    
    </script>

clipboard.png

2.队列

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

clipboard.png

<script>
      var food=new Array();  
food.unshift("1","2","3","4");  
alert(food);  
while(food.length>0){  
 food.shift();  
     alert(food);  
 }
    </script>

冰格儿
143 声望12 粉丝