【每日一算法】有效的括号
微信改版,加星标不迷路!
每日一算法-有效的括号
作者:阿广
阅读目录
1 题目
2 解析
1 题目
给定一个只包括 '('
,')'
,'{'
,'}'
,'['
,']'
的字符串,判断字符串是否有效。
有效字符串需满足:
? 左括号必须用相同类型的右括号闭合。
? 左括号必须以正确的顺序闭合。
注意空字符串可被认为是有效字符串。
示例 1:
输入: "()"输出: true
示例 2:
输入: "()[]{}"输出: true
示例 3:
输入: "(]"输出: false
示例 4:
输入: "([)]"输出: false
示例 5:
输入: "{[]}"输出: true
2 解析
只要遇到括号匹配的问题,我们就选择用栈,遇到左括号就进栈,遇到右括号,就判断栈顶元素是否与之匹配,匹配的话就pop出栈,不匹配的话就返回false。
2.1遇到左括号就进栈
if(x=='(' || x=='{' || x=='[') store.push(x);
2.2遇到右括号,就判断栈顶元素是否与之匹配,匹配的话就pop出栈,不匹配的话就返回false
else { if(store.empty() || x==')' && store.top()!='(' || x==']' && store.top()!='[' || x=='}' && store.top()!='{') return false; else store.pop();}
完整代码
class Solution {public: bool isValid(string s) { stack<char>store; for(int x:s){ if(x=='(' || x=='{' || x=='[') store.push(x); else { if(store.empty() || x==')' && store.top()!='(' || x==']' && store.top()!='[' || x=='}' && store.top()!='{') return false; else store.pop(); } } return store.empty(); }};
今日问题
这一年,你收获了什么?
19年准备完成什么目标?
打卡格式:打卡第n天,答:...
为什么打卡?戳下面你就知道了!
猛
戳
这
儿
21/天/养/一/个/好/习/惯
【每日一算法】有效的括号相关推荐
- 【每日一算法】对称二叉树
每日一算法-对称二叉树 题目 给定一个二叉树,检查它是否是镜像对称的. 例如,二叉树 [1,2,2,3,4,4,3] 是对称的. 1 / \ 2 2 / \ / \ 3 4 4 3 但是 ...
- 【每日一算法】使用二分法解决x 的平方根问题
每日一算法-x 的平方根 题目 实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去. 示例 1: ...
- 【每日一算法】二叉树的层次遍历 II
每日一算法-二叉树的层次遍历 II 题目 给定一个二叉树,返回其节点值自底向上的层次遍历. (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 例如: 给定二叉树 [3,9,20,null,n ...
- 【每日一算法】最大子序列和
每日一算法-最大子序列和 题目 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4] ...
- 【每日一算法】杨辉三角 II
每日一算法-杨辉三角 II 题目 给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行. 在杨辉三角中,每个数是它左上方和右上方的数的和. 示例: 输入: 3 输出: [1,3,3,1] ...
- 【每日一算法】杨辉三角到底是什么?
每日一算法-杨辉三角 题目 给定一个非负整数 numRows,生成杨辉三角的前 numRows 行. 在杨辉三角中,每个数是它左上方和右上方的数的和. 示例: 输入: 5 输出:[ [1], ...
- 【每日一算法】二叉树的最小深度
每日一算法-二叉树的最小深度 题目 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,2 ...
- 【每日一算法】合并两个有序数组
每日一算法-搜索插入位置 题目 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组. 说明: 初始化 nums1 和 nums2 ...
- 【每日一算法】平衡二叉树
微信改版,加星标不迷路! 每日一算法-搜索插入位置 作者:阿广 阅读目录 ? 题目 ? 解析 ? 完整代码 1 题目 给定一个二叉树,判断它是否是高度平衡的二叉树. 本题中,一棵高度平衡二叉树定义为: ...
最新文章
- 什么是人工神经网络?
- css(hr元素)水平线的定位
- python和java和scala_有没有与python3相当的scala/java收藏。国家
- 自己实现一个最简单的数据库
- sqlite3admin触发器创建
- CTFshow 命令执行 web56
- 图像处理中的通信原理——冈萨雷斯读书笔记(一)
- java程序员的日常_Java程序员的日常——经验贴(纯干货)
- CodeForces 698A - Vacations (Codeforces Round #363 (Div. 2))
- 【转】总结oninput、onchange与onpropertychange事件的用法和区别
- 脉冲控制仪C语言程序,可编程脉冲控制仪
- windows重置net use或者SMB协议
- h5 video标签
- Php把ts转为mp4,ts格式转换mp4 - 狸窝
- laravel 分页 + 分页的样式
- 如何解决移动硬盘无法格式化?两招方法教会你
- 通过 Dockerfile 搭建标注工具 brat 的镜像
- 现代女性的半糖主义ZT
- softmax的从零开始实现
- android 删除插件,Android手机如何添加删除桌面图标和插件
热门文章
- AI 不可以作为专利认证发明人,“因为它不是人”
- 从粗放到精细,如何用AI技术实现信息流广告投放的降本增效
- Kaggle金牌得主的Python数据挖掘框架,机器学习基本流程都讲清楚了
- ​中国开启开源新纪元
- 投稿2877篇,EMNLP 2019公布4篇最佳论文
- 飞桨博士会第三期来啦!中国深度学习技术俱乐部诚邀您加入
- Google最新论文:大规模深度推荐模型的特征嵌入问题有解了!
- 喜大普奔!GitHub官方文档推出中文版
- 医生再添新助手!深度学习诊断传染病 | 完整代码+实操
- ICPC 2019国际大学生程序设计竞赛,中国高校未能夺冠