Array栈方法和队列方法的特点说明

 本篇文章主要是对Array栈方法与队列方法的特点进行了详细的说明介绍,需要的朋友可以过来参考下,希望对大家有所帮助

栈方法:后进先出(last in first outside)
 
队列方法:先进先出(first in first outside)
 
具体应用如下:
 
 代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>栈方法</title>
    <script type="text/javascript">
        //栈是一种LIFO(last in first outside)后进先出的数据结构
       function basicPushOrPop(){
         var colors=["red","green","blue"];
         var count=colors.push("pink");//push()方法可以接收任意数量的参数,并把它们逐个添加到数据的末尾,并返回修改后数组的长度
         alert(count);
 
         var temp=colors.pop();//pop()方法则从数组末尾移除最后一项,减少数组的length值,然后返回移除的项
         alert(temp);
       }
 
       //队列数据结构的访问规则是FIFO(first in first outside)
       function basicShift(){
          var colors=new Array();
          var count=colors.push("red","blue");//推入两项
          alert(count);
 
          var temp=colors.shift();//取的队列中第一项的数据,并移除
          alert("现在数组长度为:"+colors.length+"--移除的项为:"+temp);
 
          var newcount=colors.unshift("green","black");//unshift方法表示在队列前端添加任意个任意类型的值,并返回新的数组长度
          alert("现在数组长度为:"+newcount);//ie unshift方法总是返回undefined
       }
    </script>
</head>
<body>
  <input type="button" value="栈方法" onclick="basicPushOrPop();" />
  <input type="button" value="队列方法" onclick="basicShift();" />
</body>
</html>

时间: 2024-09-29 01:09:12

Array栈方法和队列方法的特点说明的相关文章

JavaScript数组的栈方法与队列方法详解_javascript技巧

数组(Array)和对象(Object)应该是JavaScript中使用最多也是最频繁的两种类型了,Array提供了很多常用的方法:栈方法.队列方法.重排序方法.操作方法.位置方法.迭代方法等等. 1.Array的栈方法 栈是一种LIFO(Last-In-First-Out,后进先出)的数据结构,也就是最新添加的项最早被移除.栈中项的插入(push)和移除,只发生在一个位置--栈的顶部.ECMAScript为数组提供了push()和pop()方法,可以实现类似栈的行为.下面两图分别演示了入栈与出

Array栈方法和队列方法的特点说明_javascript技巧

栈方法:后进先出(last in first outside) 队列方法:先进先出(first in first outside) 具体应用如下: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="ht

JavaScript高级程序设计--对象,数组(栈方法,队列方法,重排序方法,迭代方法)

1.使用对象字面量定义对象 var person={}; 使用这种方式创建对象时,实际上不会调用Object构造函数. 开发人员更喜欢对象字面量的语法.   2.有时候需要传递大量可选参数的情形时,一般来讲使用对象字面量来封装多个可选参数.   3.对象属性的点表示法与方括号表示法的区别 (1)功能上:两者没区别   (2)但是方括号的有点是可以通过变量来访问属性 例如:     var person={     name:"Nic" } 点表示法:person.name 方括号表示法

深入JavaScript高级程序设计之对象、数组(栈方法,队列方法,重排序方法,迭代方法)_javascript技巧

继承是OO语言中的一个最为人津津乐道的概念. 许多OO语言都支持两种继承方式:接口继承和实现继承. 接口继承只继承方法签名,而实现继承则继承实际的方法. 如其所述,由于函数没有签名,在ECMAScript中无法实现接口继承. ECMAScript只支持实现继承,而且其实现继承主要是依靠原型链来实现的. 1.使用对象字面量定义对象 var person={}; 使用这种方式创建对象时,实际上不会调用Object构造函数. 开发人员更喜欢对象字面量的语法. 2.有时候需要传递大量可选参数的情形时,一

解析如何用两个栈来实现队列的方法_java

题目:如何用两个栈来实现队列,即实现队列的两个方法--appendTail(插入)和deleteHead(删除).分析:核心思想是一个栈正向存储,另外一个栈逆向存储.正向存储的栈用来插入,逆向存储的栈用来删除.实现的Java代码如下: 复制代码 代码如下: import java.util.Stack;public class QueneWithTwoStacks<E> { private Stack<E> stack1; private Stack<E> stack2

android 获取栈顶activty的方法总结(兼容API 5.0)

  声明:本文为Dujinyang CSDN原创投稿文章,未经许可,禁止任何形式的转载.  最近5.0\6.0\7.0 安卓系统都陆续上岗了,兼容性和代码更新是个很头疼的问题,这次我们来说下TASK的基础和API 4.4以上解决方法:         * 必要权限: <uses-permission android:name = "android.permission.GET_TASKS"/> * 涉及的TASK()方法:   1. 当前应用是否为前台task       

判断js的Array和Object的实现方法_javascript技巧

var a = ['hello','world']; console.log(typeof a); // object console.log(a.toString()); // hello,word 字符串 console.log(Object.prototype.toString.call(a)); //[object Array] var b = {'hello':'world'}; console.log(typeof b); // object console.log(b.toStri

PHP实现数组array转换成xml的方法_php技巧

本文实例讲述了PHP实现数组array转换成xml的方法.分享给大家供大家参考,具体如下: <?php $elementLevel = 0 ; function array_Xml($array, $keys = '') { global $elementLevel; if(!is_array($array)) { if($keys == ''){ return $array; }else{ return "\n<$keys>" . $array . "&l

由两个栈组成的队列

package stackAndQueue; import java.util.Stack; import org.junit.Test; /** * 由两个栈组成的队列:TwoStackQueue[2] * * [编写一个类,用两个栈实现队列,支持队列的基本操作(add.poll.peek)] * * 设计思路:栈-先进后出,队列-先进先出.用两个栈把顺序反过来. * * stackPush只管进栈,stackPop只管出栈且[仅当]其为空时,将stackPush的元素[全部]转移到stack