博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
有效的括号(Java实现)
阅读量:5352 次
发布时间:2019-06-15

本文共 1074 字,大约阅读时间需要 3 分钟。

题目:

 

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

有效字符串需满足:

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

注意空字符串可被认为是有效字符串。

示例 1:

输入: "()"输出: true

示例 2:

输入: "()[]{}"输出: true

示例 3:

输入: "(]"输出: false

示例 4:

输入: "([)]"输出: false

示例 5:

输入: "{[]}"输出: true 这个题就要用到栈的知识,刚开始进去,然后利用栈的“先进后出”的特点进行判断。 代码如下:
class Solution {    public boolean isValid(String s) {        Stack
stack = new Stack(); char[] chars = s.toCharArray(); for(char ch : chars){ if(ch == '(' || ch == '{' || ch == '['){ stack.add(ch); }else{ if(stack.isEmpty()){ return false; } if(ch == ')' && stack.pop() != '('){ return false; } if(ch == '}' && stack.pop() != '{'){ return false; } if(ch == ']' && stack.pop() != '['){ return false; } } } return stack.isEmpty(); }}

 

 

 

转载于:https://www.cnblogs.com/youdiaodaxue16/p/10770548.html

你可能感兴趣的文章
Java 编程下实现随机无重复数字功能
查看>>
Android 编程下的代码混淆
查看>>
animation属性
查看>>
页内的模块和组件抽象规划经验
查看>>
安全-分析深圳电信的新型HTTP劫持方式
查看>>
将Centos的yum源更换为国内的阿里云源
查看>>
git diff 的用法
查看>>
ajax 跨域问题
查看>>
站立会议第一天(11月15日)
查看>>
sql创建临时表并且插入数据
查看>>
我对技术的理解
查看>>
每日bing API
查看>>
JAVA命名规范
查看>>
【Thinkphp学习】TP3.2.3在PHP5.5环境下运行非常慢
查看>>
Navicat for MySQL连接MYSQL出错,错误代码1045的解决方法
查看>>
.NET WEB程序员需要掌握的技能
查看>>
linux shell脚本
查看>>
设计模式(九):代理模式
查看>>
[ USACO 2018 OPEN ] Out of Sorts (Platinum)
查看>>
Java 导入Excel文件到数据库
查看>>