栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

20. Valid Parentheses(括号)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

20. Valid Parentheses(括号)

Leecode 刷题第一轮 27th Sep 20. Valid Parentheses

题目名称:20. Valid Parentheses

难度:Easy

知识点:stack

解题思路:

这道题的关键点在于如何应对各种模式下的配对,例如(){}[], {[()]},(){[]}等,如果以一个找中间点然后去匹配左右两边的符号的思路的话,有点难去定位这些不确定的中间点,可以尝试在遇到左边符号的情况下一直往右边走,遇到右边之后就以该右边符号和他前面的左边符号为中心点向两边配对,如果最左边或者上次配对的右边被配对了,那直接跳到配对的最右边,继续遍历,直到最后一个字符也被配对。

这道题有个简单的方法,既然要注重顺序,那就考虑到stack. 从最左边起,将左边的符号持续放到stack中,当遇到右边符号,就来配对stack中的符号,如果配对成功就拿出左边符号并继续比对下一个符号,因为左边右边必须相对应, 那只要stack中有东西,右边新遇到的字符就要和他一样,如果不同则返回false. 完成便利后,如果stack中还有残留,也返回false.

class Solution {
    public boolean isValid(String s) {
        Stack stack = new Stack<>();
        for(int i=0; i 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/272307.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号