博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode -- Valid Parentheses
阅读量:5978 次
发布时间:2019-06-20

本文共 1130 字,大约阅读时间需要 3 分钟。

不要因为走的太远而忘记我们为什么出发

[问题描述]

Given a string containing just the characters '('')''{''}''[' and ']', determine if the input string is valid.

The brackets must close in the correct order, "()" and "()[]{}" are all valid but "(]" and "([)]" are not.

[解题思路]

经典括号匹配问题,使用栈模拟即可

1 bool Solution::isValid(std::string s) 2 { 3     std::stack
tmp; 4 for (int i = 0; i < s.length(); i ++){ 5 if (s[i] == '(' || s[i] == '[' || s[i] == '{
') 6 tmp.push(s[i]); 7 else if (s[i] == ')'){ 8 if (tmp.size() > 0 && tmp.top() == '(') 9 tmp.pop();10 else11 return false;12 }13 else if (s[i] == ']'){14 if (tmp.size() > 0 && tmp.top() == '[')15 tmp.pop();16 else17 return false;18 }19 else if (s[i] == '}'){20 if (tmp.size() > 0 && tmp.top() == '{
')21 tmp.pop();22 else23 return false;24 }25 }26 return tmp.size() == 0;27 }

 

转载于:https://www.cnblogs.com/taizy/p/3911276.html

你可能感兴趣的文章
Spring核心系列之Bean的注入
查看>>
iOS AutoLayout进阶(二)Content Hugging Priority
查看>>
git上的后悔药
查看>>
微信公众号-入门的坑
查看>>
为什么你的企业需要使用聊天机器人来在市场竞争中保持不败之地
查看>>
IdleHandler,页面启动优化神器
查看>>
ES6 学习笔记 ( let 和 const )
查看>>
Android 源码分析之旅4 1 Android HAL层概述
查看>>
面试总结3 介绍spring
查看>>
浅谈Nginx服务器的内部核心架构设计
查看>>
深入vue2.0底层思想--模板渲染
查看>>
webpack4.0入门指南(一)安装和转换es6语法
查看>>
理解消息转发机制
查看>>
深入浅出HTTP
查看>>
使用 Docker 搭建 Laravel 本地环境
查看>>
android常用设计模式之单例模式
查看>>
从零开始搭建一个 Webpack 开发环境配置(附 Demo)
查看>>
RAC 使用方法总结
查看>>
深度解析国内首个云原生数据库POLARDB的“王者荣耀”
查看>>
浏览器打印--类似快递拆包多个单号打印
查看>>