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

java有效括号问题Leetcode

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

java有效括号问题Leetcode

有效括号

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

有效字符串需满足:

  1. 左括号必须用相同类型的右括号闭合。

    1. 左括号必须以正确的顺序闭合。

思路:

  1. 因为如果字符串长度s为奇数,它一定不能闭合成功

  2. 用Stack创建栈stack,for循环来暴力枚举,如果为左括号,

    则将其push到栈顶,如果为右括号,则进行匹配peek(),

    取出栈顶元素进行匹配,若匹配成功将该元素删除用stack.pop()

    若匹配失败返回false。


    总结 :

    还是要学会栈的工作原理,原理在上面,还有就是java中Stack类的一些方法。

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

赠送:stack中的一些方法

1boolean empty() 测试堆栈是否为空。
2Object peek( ) 查看堆栈顶部的对象,但不从堆栈中移除它。
3Object pop( ) 移除堆栈顶部的对象,并作为此函数的值返回该对象。
4Object push(Object element) 把项压入堆栈顶部。
5int search(Object element) 返回对象在堆栈中的位置,以 1 为基数。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/531147.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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