《LeetCode力扣练习》第20题 有效的括号 Java
《LeetCode力扣练习》第20题 有效的括号 Java
一、资源
题目:
给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。
示例 1:
输入:s = “()”
输出:true示例 2:
输入:s = “()[]{}”
输出:true示例 3:
输入:s = “(]”
输出:false示例 4:
输入:s = “([)]”
输出:false示例 5:
输入:s = “{[]}”
输出:true提示:
1 <= s.length <= 104 s 仅由括号 '()[]{}' 组成
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/valid-parentheses
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。上代码(经过线上OJ测试)
import java.util.ArrayDeque; import java.util.HashMap;/*** Created with IntelliJ IDEA.** @author : DuZhenYang* @version : 2022.03.01 18:01:48* description :*/ public class LeetCode {public boolean isValid(String s) {int length = s.length();if (length % 2 == 1) {return false;}HashMap<Character, Character> pairs = new HashMap<>();pairs.put(')', '(');pairs.put(']', '[');pairs.put('}', '{');ArrayDeque<Character> stack = new ArrayDeque<>();for (int i = 0; i < length; i++) {char ch =s.charAt(i);if(pairs.containsKey(ch)){if(stack.isEmpty()||stack.peek()!=pairs.get(ch)){return false;}stack.pop();}else {stack.push(ch);}}return stack.isEmpty();} }
《LeetCode力扣练习》第20题 有效的括号 Java相关推荐
- LeetCode 之 JavaScript 解答第20题 —— 有效的括号(Valid Parentheses)
Time:2019/4/11 Title: Valid Parentheses Difficulty: Easy Author: 小鹿 题目:Valid Parentheses Given a str ...
- 《LeetCode力扣练习》第96题 不同的二叉搜索树 Java
<LeetCode力扣练习>第96题 不同的二叉搜索树 Java 一.资源 题目: 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回 ...
- 《LeetCode力扣练习》第75题 颜色分类 Java
<LeetCode力扣练习>第75题 颜色分类 Java 一.资源 题目: 给定一个包含红色.白色和蓝色.共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按 ...
- 《LeetCode力扣练习》第64题 最小路径和 Java
<LeetCode力扣练习>第64题 最小路径和 Java 一.资源 题目: 给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为 ...
- 《LeetCode力扣练习》第62题 不同路径 Java
<LeetCode力扣练习>第62题 不同路径 Java 一.资源 题目: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 "Start" ). ...
- 《LeetCode力扣练习》第56题 合并区间 Java
<LeetCode力扣练习>第56题 合并区间 Java 一.资源 题目: 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, ...
- 《LeetCode力扣练习》第55题 跳跃游戏 Java
<LeetCode力扣练习>第55题 跳跃游戏 Java 一.资源 题目: 给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 . 数组中的每个元素代表你在该位置可以跳跃的最大 ...
- 《LeetCode力扣练习》第617题 合并二叉树 Java
<LeetCode力扣练习>第617题 合并二叉树 Java 一.资源 题目: 给你两棵二叉树: root1 和 root2 . 想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些 ...
- 《LeetCode力扣练习》第461题 汉明距离 Java
<LeetCode力扣练习>第461题 汉明距离 Java 一.资源 题目: 两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目. 给你两个整数 x 和 y,计算并返回 ...
最新文章
- python reduce()函数
- android NDk编程
- 一文了解Nuget的使用
- BZOJ 2956 模积和
- Android开发笔记(一百四十)Word文件的读取与显示
- Android智能电视应用程序开发浅谈(二)
- fgets和fgetl有什么区别
- mysql导入hdfs参数_导入数据到HDFS
- 实例讲解什么是Meta回归,怎么利用Meta回归发表文章!
- Android 不透明度值换算
- 负数除以整数的余数怎么算?
- centOS6.5中部署java调用h2o中python包环境
- 为什么你的HDMI口没信号!
- 7个快速登录Gmail的技巧
- Pywin32:Python库的简介、安装和使用攻略
- html博客设计论文,个人博客网站(论文).doc
- 游戏推广的引流软件有用吗
- 小虫记之iptables
- TeamViewer 连接后无法操作的解决方法
- android砖刷机精灵,Android刷机精灵:喜刷刷
热门文章
- 马歇尔计划软件测试自学,绝密本科目考试启用前及综合应用.doc
- Java 接受reactjs数据_[Java教程]react.js 父子组件数据绑定实时通讯
- PCI总线和PXI总线的区别
- C++实现有哨兵的双向循环链表
- c语言中随机选择函数,怎样让c语言中的随机函数真正随机?
- 华为机试第九题python
- 基于yolo4和yolo3(pytorch)的口罩识别的对比
- AutoML自定义搜索网络类(如何在一个大的网络中搜索一个网络)
- 看板中的WIP限制思想 1
- npm 加入 TC39 委员会,参与定制 JavaScript 标准