【Leetcode problem 20】-Valid Parentheses
来源:互联网 发布:淘宝网 电脑版 登录 编辑:程序博客网 时间:2024/06/04 18:55
思路分析:1.判断字符为左括号,则将其压入数组中。
2.若字符为右括号,则判断其与数组中的最新压入的字符是否匹配。
3.若匹配,则弹出数组中的元素。
4.否则返回false;
javascript代码如下
/** * @param {string} s * @return {boolean} */var isValid = function(s) { var arr=[]; var len=s.length; for(i=0;i<len;i++){ switch(s[i]){ case "[":arr.push(s[i]);break; case "(":arr.push(s[i]);break; case "{":arr.push(s[i]);break; case "]":if(arr[arr.length-1]=="["){arr.pop();} else{ return false;} break; case ")":if(arr[arr.length-1]=="("){arr.pop();} else{ return false;} break; case "}":if(arr[arr.length-1]=="{"){arr.pop();} else{ return false;} break; } } if(arr.length==0){ return true; } else{ return false; }};
如下代码使用对象:
var isValid = function(s) { var left={ "(":")", "[":"]", "{":"}" }, right={ "}":0, ")":0, "]":0 }, len=s.length, i=0,match=[]; for(i=0;i<len;i++){ if(left.hasOwnProperty(s[i])){ match.push(left[s[i]]); }else{ if(s[i]==match[match.length-1]){ match.pop(); }else{ return false; } } } if(match.length===0){ return true; } else{ return false; } var arr=[]; var len=s.length; for(i=0;i<len;i++){ switch(s[i]){ case "[":arr.push(s[i]);break; case "(":arr.push(s[i]);break; case "{":arr.push(s[i]);break; case "]":if(arr[arr.length-1]=="["){arr.pop();} else{ return false;} break; case ")":if(arr[arr.length-1]=="("){arr.pop();} else{ return false;} break; case "}":if(arr[arr.length-1]=="{"){arr.pop();} else{ return false;} break; } } if(arr.length==0){ return true; } else{ return false; }};
阅读全文
0 0
- 【Leetcode problem 20】-Valid Parentheses
- Leetcode Problem.20—Valid Parentheses
- LeetCode 20: Valid Parentheses
- LeetCode(20) Valid Parentheses
- leetcode 20 Valid Parentheses
- Leetcode【20】:Valid Parentheses
- leetcode 20-Valid Parentheses
- [leetcode 20] Valid Parentheses
- [Leetcode] 20 - Valid Parentheses
- LeetCode | #20 Valid Parentheses
- leetcode.20-----------Valid Parentheses
- [leetcode] 20 Valid Parentheses
- leetcode-20 Valid Parentheses
- leetCode #20 Valid Parentheses
- leetcode 20 Valid Parentheses
- Leetcode 20 Valid Parentheses
- LeetCode 20 - Valid Parentheses
- LeetCode 20: Valid Parentheses
- 【JZOJ 5284】 超级翻转
- SqueezeNet网络原理
- android下的SQLite数据库
- 关于Windows下使用CuteFTP向Ubuntu传文件时提示“请求被拒绝”
- ActivityManagerService原理分析
- 【Leetcode problem 20】-Valid Parentheses
- Nginx配置详解
- vue2.x---vue-router如何在router-link标签绑定click点击事件、keyup、change等事件
- js无隙轮播图片
- 简单工厂模式
- C# 中字符串string和字节数组byte[]的转换
- Java compiler level does not match解决方法
- dubbo-admin的部署
- Centos查看虚拟机IP地址及使用XShell连接