有效的括号 leetcode java篇

news/2024/7/3 6:50:34

给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。

有效字符串需满足:

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。

class Solution {
    public boolean isValid(String s) {
        char[] arr = s.toCharArray();
        int len = arr.length;
        int[] stacks = new int[len];
        int top=-1;
        for (char c : arr) {
            if (c == '(' || c == '[' || c == '{') {
                stacks[++top] = c;
            } else {
                if (top == -1 || (c == ')' && stacks[top] != '(') || (c == '}' && stacks[top] != '{') || (c == ']' && stacks[top] != '[')) {
                    return false;
                }
                top--;
            }
        }
        return top==-1;
    }
}

没有用stack是因为还没学到那里,不过用自己的stacks实现,道理其实差不多; 

 


http://www.niftyadmin.cn/n/3651735.html

相关文章

ruoyi若依 组织架构设计--[ 部门管理 ]

ruoyi若依 组织架构设计--[ 部门管理 ] 部门管理部门查询部门新增部门修改部门删除 部门管理 部门查询 需要注意的是,部门管理也有数据权限,比如A用户分配的数据权限(通过角色分配)是深圳总公司,那么A用户登录后看到的部门也是深圳总公司&am…

在排序数组中查找元素的第一个和最后一个位置 java篇 leetcode

给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 进阶: 你可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗&#xff1…

Python Cookbook 第二版 汉化版 [00-2-Preface] Part 2

0.5 Organization0.5 本书的组织本书共 20 章。每一章专门讨论某一类型的 recipe ,比如算法、文本处理、数据库等。本书第一版仅 17 章。自第一版以来,Python 在语言设施和程序库两方面有了进步,Python 社区也在 cookbook 网站上新贴了大量的…

删除有序数组中的重复项 leetcode java篇

给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。 由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分…

懒人的Python技巧#20060706

很多工作经常是在同时打开了N个窗口,搞不好还开着Photoshop和/或Illustrator的情况下进行。如此负荷,再快的电脑也照给“沙漏”。然而即使是在这样的情形之下,还经常会遇到“希望把Word文档转为文本文件”的需求——这大约是Word的滥用和优秀…

移除元素 leetcode java篇

给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面…

懒人的Python技巧#20060708

National Geographic 的网站上有一个 Photo of the Day (POTD)栏目:http://lava.nationalgeographic.com/pod/ (当天的墙纸)http://lava.nationalgeographic.com/cgi-bin/pod/archive.cgi (以前的墙纸Archi…

Python Cookbook 第二版 汉化版 [00-1-Info]

Python Cookbook 第二版 汉化版David Ascher, Alex Martelli, Anna Ravenscroft 著出版社: OReilly出版日期: March 2005ISBN: 0-596-00797-3页码数目: 844 页同本书第一版一样,第二版汇集了 Python 程序员遇到的常见问题的解决办法。第二版针对 Python 2.4 做了相应…