博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
算法-字符串-有效的括号
阅读量:3963 次
发布时间:2019-05-24

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

在这里插入图片描述

在这里插入图片描述

这种判断成对的就用栈比较好

class Solution {
public boolean isValid(String s) {
if(s.length() % 2 == 1) {
//括号为奇数 return false; } Stack
stack = new Stack<>(); //用map来保存括号对 用来判断很方便 Map
map = new HashMap<>(); //因为是左括号入栈 右括号判断 通过右括号来获取左括号 与栈顶元素比较 一样就出栈 //所以key为右括号 map.put(')', '('); map.put(']', '['); map.put('}', '{'); for(int i = 0; i < s.length(); i++) {
char cur = s.charAt(i); if(map.containsKey(cur)) {
//如果包含说明是右括号 判断 if(stack.isEmpty() || stack.peek() != map.get(cur)) {
return false; } stack.pop(); }else {
//不包含 说明是左括号 左括号就入栈 stack.push(cur); } } //栈为空都匹配成功 return stack.isEmpty(); }}

转载地址:http://hmhzi.baihongyu.com/

你可能感兴趣的文章
一些比较好的golang安全项目
查看>>
HTTP状态码
查看>>
go语言
查看>>
mysql mariaDB 以及存储引擎
查看>>
游戏行业了解介绍
查看>>
linux at 命令使用
查看>>
Go在windows下执行命令行指令
查看>>
inotify
查看>>
inode
查看>>
Shell: sh,bash,csh,tcsh等shell的区别
查看>>
golang ubuntu 配置 笔记
查看>>
vim 常用命令
查看>>
golang 开源项目
查看>>
ubntu 开发服务进程
查看>>
linux 常用命令以及技巧
查看>>
记录1年免费亚马逊AWS云服务器申请方法过程及使用技巧
查看>>
golang文章
查看>>
Source Insight 经典教程
查看>>
快速打开菜单附件中的工具
查看>>
Windows系统进程间通信
查看>>