javascript数据结构中栈的应用之符号平衡问题

  

本文实例讲述了javascript数据结构中栈的应用之符号平衡问题。分享给大家供大家参考,具体如下:

  

由于栈先进后出的结构,我们可以将其作为有用的工具,下面就介绍一下栈的应用。

  

首先是符号的平衡问题。有一串字符串,我们需要判断其中固定的字符是否成对出现,比如& lt;比;{}[]()等。当然实现的方法有很多,但是采用栈的实现会相对更加简单。

  

实现上述算法的JavaScript代码如下

        & lt; !DOCTYPE html>   & lt; html>   & lt; head>   & lt;元charset=皍tf - 8”比;   & lt; title> & lt;/title>   & lt;/head>   & lt; body>   & lt;脚本type=" text/javascript祝辞   函数isbalance (str) {   var str=str.toString (),   len=str.length,   myArray=new Array ();   (var i=0; i< len;我+ +){   如果(str[我]==' [' | | str[我]==' {' | | str[我]==' ('){   [我]myArray.push (str);   }   如果(str[我]==]“| | str[我]=='}' | | str[我]==)){   如果(myArray.length==0) {   文档。写(“字符串不平衡”);   返回错误;   }   var popValue=https://www.yisu.com/zixun/myArray.pop ();   开关(str[我]){   例“]”:{   如果(“[”!=popValue) {   文档。写(']不平衡”);   }   打破;   }   例“}”:{   如果‘{’!=popValue) {   文档。写('}不平衡”);   }   打破;   }   例“)”:{   如果(“(”!=popValue) {   document . write()不平衡”);   }   打破;   }   默认值:   打破;   }   }   }   }   isbalance({[]});//真实的   isbalance({[[]]});//真实的   isbalance((()[]));//真实的   isbalance('{[]] ");//假的   & lt;/script>   & lt;/body>   & lt;/html>      之前      <强>

该算法的思想是:。

  

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数据结构与算法技巧总结》,《JavaScript数学运算用法总结》,《JavaScript排序算法总结》,《JavaScript遍历算法与技巧总结》,《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结》

  

希望本文所述对大家JavaScript程序设计有所帮助。

javascript数据结构中栈的应用之符号平衡问题